一、标识符和关键字
标识符
命名规范:
以字母、数字、下划线 _、**$**符组成,不能以数字开头。
包名要小写、类名各单词首字母大写、变量名和方法名采用驼峰命名法,常量推荐大写、多个单词以_分隔。
关键字
一些被赋予特殊含义的词汇、不能作为标识符
Java中的关键词有:
abstract | assert | boolean | break | byte | case | catch | char |
class | const | continue | default | do | double | else | enum |
extends | final | finally | float | for | goto | if | implements |
import | instanceof | int | interface | long | native | new | package |
private | protected | public | return | short | static | try | void |
volatile | while |
其中 true、false、null、goto是Java预留的关键字,称之为保留字
二、基本数据类型
八大基本数据类型
- byte
- short
- int
- long
- float
- doubel
- char
- boolean
他们的容量分别是:
1字节、2字节、4字节、8字节、4字节、8字节、2字节、1字节
他们的默认值分别是:
0、0、0、0L、0.0f、0.0d、’\u0000’、false
需要注意的是:
1. 定义 float 类型是 末尾要加上 “F"或"f”。
2. char使用acsii码,表示字符常见的有 小写"a"为 ‘97’、大写 "A"为’65’。
三、运算符与表达式
算数运算符:基础的加减乘除、和 % 表示取余数。
赋值运算符:=、+=、-=、*=、/=、%=,除直接 = 号直接赋值外,均为 先按照 左边的符号和 =号后面的值运算后,再赋值。
int i = 10;
i += 5; // 等于 i = i + 5;
自增自减运算符: i++、++i、i–、--i,符号前后位置是有区别的
int i = 10;
System.out.println(++i); // 输出为 11
System.out.println(i++); // 输出为 11
System.out.println(i); // 输出为 12
可以看到 ++i 是先运算,而 i++ 是后运算
关系运算符:>、<、>=、<=、==、!= 。
逻辑运算符: &&、||、! ,称之为 与 或 非,与 && 表示并且,或 || 表示或者,非 ! 表示取反
位运算符: &、|、^、~、<<、>>、>>>,称为按位与、按位或、按位异或、按位取反、左位移、右位移、无符号右位移
TP
5 & 4 // 0 1 = 0, 1 0 = 0, 1 1 = 1, 0 0 = 0
0101 & 1100 //二进制下
0100 //最终结果 4
5 | 4 // 0 1 = 1, 1 0 = 1, 1 1 = 1, 0 0 = 0
0101 | 1100
0101 // 5
5 ^ 4 // 0 1 = 1, 1 0 = 1, 1 1 = 0, 0 0 = 0
0101 | 1100
0001 // 1
~4
~0100 // ~0 = 1, ~1 = 0;
15组1111和一组1011 // -5
三目运算符:
boolean flag = false;
System.out.print(flag? "true!" : "false!"); //结果为 false!
四、数组
一维数组
int[] arr1 = new int[10]; //创建一个容量为10的int行数组
int[] arr2 = {1,2,3,4,5}; //带有初始元素的一维数组
二维数组
int[][] arr1 = new int[5][4]; //五行四列的int型二维数组
int[][] arr2 = {{1,2},{1,2,3},{1,2},{3,4}}; //带有初始元素的二维数组
五、流程控制语句
条件分支语句
int a = 10;
int b = 5;
if(a > b){
}else{
}
if(a > b){
}else if(a < b){
}else{
}
String str = "周一";
switch(str){
case "周一":
System.out.print("字符串str是 周一");
break;
case "周二":
System.out.print("字符串str是 周二");
break;
default:
System.out.print("没有匹配项");
break;
}
循环结构语句
for(int i = 0; i< 3; i++){
System.out.print(i); // 012
}
String[] values = {"a","b","c"};
for(String v : values){
System.out.print(v); // abc
}
boolean flag = true;
int i = 0;
while(flag){
if(i > 2){break;}
System.out.print(i); //012
i++;
}
i = 5;
do{
System.out.print(i); //5
i++;
}while(i <= 5);