备份笔记,以供参考。

优秀的教程网站:https://bgb.apachecn.org/#/docs/java/

java和C语言很相似。所以说记得写完语句加;

目录不分先后。

Hello World

1
2
3
4
5
6
7
public class Main
{
public static void main(String[]args)
{
System.out.print("Hello World"); //输出
}
}

输入

你需要先在程序最前面加上 import java.util.Scanner;
Java的输入需要根据数值类型,有三种输入方法。

1
2
3
public String nextLine()//用于获取String输入
public int nextInt()//用于整数输入
public float nextFloat()//用于float输入

定义变量

原始数据

在 Java 中,我们有八种原始数据类型:boolean,char,byte,short,int,long,floatdouble

1
int x;

byte,short,intlong数据类型用于存储整数。
byte有一个范围,只能储存-128到127的数字。short只能储存-32768到32767的数字。
intlong拥有更大范围,不过我觉得这个范围一般情况下也达不到,暂不进行阐述,
floatdouble用于分数。
char用于存储字符(字母)。
boolean数据类型用于包含true或false的变量。

字符串

使用String

1
String str = "BeginnersBook";

运算符

基本运算符

+用于加法。
-用于减法。
*用于乘法。
/用于除法。
%用于模数。

注意:模运算符返回余数,例如10%5将返回 0。

例:

1
2
3
4
5
6
7
8
9
10
11
12
public class ArithmeticOperatorDemo {
public static void main(String args[]) {
int num1 = 100;
int num2 = 20;

System.out.println("num1 + num2: " + (num1 + num2) );
System.out.println("num1 - num2: " + (num1 - num2) );
System.out.println("num1 * num2: " + (num1 * num2) );
System.out.println("num1 / num2: " + (num1 / num2) );
System.out.println("num1 % num2: " + (num1 % num2) );
}
}

赋值运算符

=+=-=*=/=%=

num2 = num1将变量num1的值赋给变量
num2 += num1等于num2 = num2 + num1
num2 -= num1等于num2 = num2-num1
num2 *= num1等于num2 = num2 * num1
num2 /= num1等于num2 = num2 / num1
num2 %= num1等于num2 = num2%num1

例:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
public class AssignmentOperatorDemo {
public static void main(String args[]) {
int num1 = 10;
int num2 = 20;

num2 = num1;
System.out.println("= 输出: "+num2);

num2 += num1;
System.out.println("+= 输出: "+num2);

num2 -= num1;
System.out.println("-= 输出: "+num2);

num2 *= num1;
System.out.println("*= 输出: "+num2);

num2 /= num1;
System.out.println("/= 输出: "+num2);

num2 %= num1;
System.out.println("%= 输出: "+num2);
}
}

递增递减

num++相当于num=num+1;
num--相当于num=num-1;

1
2
3
4
5
6
7
8
9
10
public class AutoOperatorDemo {
public static void main(String args[]){
int num1=100;
int num2=200;
num1++;
num2--;
System.out.println("num1++ is: "+num1);
System.out.println("num2-- is: "+num2);
}
}

逻辑运算符

只能用于布尔值

&&||!

假设我们有两个布尔变量b1和b2。
如果b1和b2都为真,则b1 && b2将返回true,否则它将返回false。
如果b1和b2都为假,则*b1 || b2将返回false,否则返回true。
!b1将返回与b1相反位置,这意味着如果b1为假则为真,如果b1为真则返回false。

比较运算符

==``!=``>``<``>=``<=

如果左侧和右侧都相等,则==返回true。
如果左侧不等于运算符的右侧,则!=返回true。
如果左侧大于右侧,>返回true。
如果左侧小于右侧,<返回true。
如果左侧大于或等于右侧,则>=返回true。
如果左侧小于或等于右侧,则<=返回true。

If判断

If(condition){}

1
2
3
4
5
6
7
8
9
public class IfStatementExample {

public static void main(String args[]){
int num=70;
if( num < 100 ){
System.out.println("number is less than 100");
}
}
}

If-else

同C语言

1
2
3
4
if (condition)    //如果
true_statement;
else //否则
false_statement;

Switch-case条件选择

同C语言

1
2
3
4
5
6
7
8
9
10
11
12
switch ()
{
case constant:
//Java code
;
case constant:
//Java code
;
default:
//Java code
;
}

for循环

同C语言

1
2
3
4
for (int count{ 1 }; count <= 10; ++count) 
//别写;了
//可以多弄几个
for (int x{ 0 }, y{ 9 }; x < 10; ++x, --y)

while循环

同C语言

1
2
3
4
while(condition)
{
statement(s);
}

例如:

1
2
3
4
5
6
7
8
9
class WhileLoopExample {
public static void main(String args[]){
int i=10;
while(i>1){
System.out.println(i);
i--;
}
}
}

do-while循环

同C语言

1
2
3
4
5
6
7
8
9
class DoWhileLoopExample {
public static void main(String args[]){
int i=10;
do{
System.out.println(i);
i--;
}while(i>1);
}
}
continue语句

continue;用于在循环语句内部。每当循环遇到它时,就会调准到循环开头,重新开始一次循环。

break语句

Java的break与C语言中的break有很大不同。
循环遇到break;后,会立刻终止循环。
在C++中的break;:return可以换成break。这允许我们在不退出整个函数的情况下退出继续执行在这个函数中处switch其他内容

构造函数

Java与C都有很多构造函数的方法,此处只列举一个最简单的方法。

1
2
3
4
5
public class MyClass{
//MyClass是一个新函数
MyClass(){
}
}

继承

继承的最大优势是,基类中已经存在的代码不需要在子类中重写。
注意:Java的继承写法与C有很大区别。

1
2
3
class A extends B
{
}

这里的类A是子类,类B是父类。A类继承了B类的属性和方法。

枚举

同C语言

1
2
3
4
5
6
public enum Directions{
EAST,
WEST,
NORTH,
SOUTH
}