Java的命名规则:
组成元素:英文字符: a-zA-Z;数字: 0-9;符号: _与$;
标识符规则:数字不能开头;不可以使用关键字;严格区分大小写,不限制长度起名时,尽量达到见名知意。
定义变量的语法格式:
数据类型 变量名 = 数据值;int a = 100;
变量使用的注意事项:变量定义后可以不赋值,使用时再赋值。不赋值不能使用。变量使用时有作用域的限制。
变量不可以重复定义。
数据类型转换:
数据遵循一个原则:
范围小的数据类型值(如byte),可以直接转换为范围大的数据类型值(如int);
范围大的数据类型值(如int),不可以直接转换为范围小的数据类型值(如byte)。
运算符
算术运算符:
运算符 | 运算规则 | 范例 | 结果 |
+ | 正号 | +3 | 3 |
+ | 加 | 2+3 | 5 |
+ | 连接字符串 | “中”+“国” | “中国” |
- | 负号 | int a=3;-a | -3 |
- | 减 | 3-1 | 2 |
* | 乘 | 2*3 | 6 |
/ | 除 | 5/2 | 2 |
% | 取模 | 5/2 | 1 |
++ | 自增 | int a=1;a++/++a | 2 |
-- | 自减 | int b=3;a--/--a | 2 |
注意:
- 加法运算符在连接字符串时要注意,只有直接与字符串相加才会转成字符串。
- 除法“/”当两边为整数时,取整数部分,舍余数。当其中一边为浮点型时,按正常规则相除。
- “%”为整除取余符号,小数取余没有意义。结果符号与被取余符号相同。
- 整数做被除数,0不能做除数,否则报错
- ++,--运算符前置时,先将变量a的值自增1或者自减1,然后使用更新后的新值参与运算操
赋值运算符:
运算符 | 运算规则 | 范例 | 结果 |
= | 赋值 | int a=2 | 2 |
+= | 加后赋值 | int a=2,a+=2 | 4 |
-= | 减后赋值 | int a=2,a-=2 | 0 |
*= | 乘后赋值 | int a=2,a*=2 | 4 |
/= | 整除后赋值 | int a=2,a/=2 | 1 |
%= | 取模后赋值 | int a=2,a%=2 | 0 |
注意:诸如+=这样形式的赋值运算符,会将结果自动强转成等号左边的数据类型。
比较运算符:
运算符 | 运算规则 | 范例 | 结果 |
== | 相等于 | 4==3 | False |
!= | 不等于 | 4!=3 | True |
< | 小于 | 4<3 | False |
> | 大于 | 4>3 | True |
<= | 小于等于 | 4<=3 | False |
>= | 大于等于 | 4>=3 | True |
注意:
赋值运算符的 = 符号与比较运算符的 == 符号是有区别的,如下:
赋值运算符的 = 符号,是用来将 = 符号右边的值,赋值给 = 符号左边的变量;
比较运算符的 == 符号,是用来判断 == 符号 左右变量的值是否相等的。
逻辑运算符:
运算符 | 运算规则 | 范例 | 结果 |
& | 与 | false&true | False |
| | 或 | false|true | True |
^ | 异或 | true^flase | True |
! | 非 | !true | Flase |
&& | 短路与 | false&&true | False |
|| | 短路或 | false||true | True |
注意:短路的意思是
当使用短路与或者短路或时,只要能判断出结果则后边的部分就不再判断。
短路与&&:参与运算的两边数据,有false,则运算结果为false;
短路或||:参与运算的两边数据,有true,则运算结果为true;
三元运算符:(条件表达式)?表达式1:表达式2;
先判断条件表达式的值,若为true,运算结果为表达式1;若为false,运算结果为表达式2。
if语句:
if (条件语句){
执行语句;
……
}
判断条件是一个布尔值,当判断条件为true时,{}中的执行语句才会执行。
if…else语句:
if (判断条件){
执行语句1
……
}else{
执行语句2
……
}
当判断条件为true时,if后面{}中的执行语句1会执行。当判断条件为false时,else后面{}中的执行语句2会执行。
if…else if…else语句:
if (判断条件1) {
执行语句1
} else if (判断条件2) {
执行语句2
}
...
else if (判断条件n) {
执行语句n
} else {
执行语句n+1
}
循环语句while:
while(循环条件){
执行语句
………
}
循环语句for:
for(初始化表达式; 循环条件; 操作表达式){
执行语句
………
}
循环语句do…while:
do {
执行语句
………
} while(循环条件);
循环嵌套:
//正三角形
System.out.println("请输入你要打印的行数:");
//Scanner scanner = new Scanner(System.in);
int num = scanner.nextInt();
for(int m=1;m<=num; m++) {
for(int i=1; i <=(num-m); i++) {
System.out.print(" ");
}
for(int j=1; j<=(2*m-1); j++) {
System.out.print("*");
}
System.out.println();}
//正的三角形
for(int i=0; i <= 5; i++) {
for(int j=0; j<= i; j++) {
System.out.print("*");
}
System.out.println();
}
System.out.println("--------------");
//倒的三角形
for(int i=5; i >=0; i--) {
for(int j=0; j<= i; j++) {
System.out.print("*");
}
System.out.println();}
System.out.println("--------------");
//九九乘法表
for (int i = 1; i <= 9; i++) {
for (int j = 1; j <=i; j++) {
System.out.print(i+"*"+j+"="+(i*j)+" ");
}
System.out.println();
}
常见错误:
jj
i解决:
只是为了满足Java的语法。