版权声明:本文为博主原创文章,转载请声明原文出处: https://blog.csdn.net/lucky534528795/article/details/89042784
本文脉络
Java命名
标识符
由字母、下划线“_”、美元符“$”开头,对大小写敏感,长度无限制
类名
首字母大写
程序名
首字母大写,需与主类(有main()方法,或public类)名一致
进制转换
- 十进制:30
- 二进制:11110 (直接书写)
- 八进制:036 (以数字0开头)
- 十六进制:0x1E (以数字0和字母X开头,X大小写不限)
数据类型
先声明,后使用
Java的数据类型可分为基本数据类型和引用数据类型两大类
引用数据类型
String:
final类,其值不可改变
定义方式:String hello = “Hello World”;
内含方法:
- 获取字符串长度:hello.length( )
基本数据类型
数据类型 | 所占位数 | 数值范围 |
---|---|---|
byte | 8 | -27~27-1 |
shot | 16 | -215~215-1 (即:-32768~32767) |
int | 32 | -231~231-1 (即:-21亿~21亿) |
long | 64 | -263~263-1 (即:-922亿亿~922亿亿) |
char | 16 | 0~216-1 (即0 ~65535) |
float | 32 | 3.4e-038 ~3.4e+038 |
double | 64 | 1.7e-308 ~1.7e+308 |
boolean | 1 | true 和 false |
对long型:使用大写L或小写l作为后缀。如:long total=8000L;
对float型:必须在尾部加F或f后缀,否则默认为double型。
float型表示方法:
-
- 定点数:float f1=123.456F;
- 指数法:float f2=1.23456e2f; (e后面必为整数)
对char型:Java字符采用Unicode编码,每个字符占2个字节。
Unicode编码与ASCII码兼容。例如:char c1 = ‘\u0041’;表示的就是’A’
转义字符表
转义字符 | 功能 |
---|---|
\n | 换行(new line) |
\t | 制表符(tab),光标移至下一个制表位 |
\ | 输出反斜线 |
’ | 输出单引号 |
" | 输出双引号 |
\b | 退格(backspace) |
\r | 回车(carriage return) |
char c = ‘\n’; 是对的
对boolean型,占1个字节,只能取true(真)、false(假)两个值中的一个,不能用0或非0的整数替代true和false
无初始化成员变量的默认值:
变量类型不同,分配的内存类型也不同
变量的算术运算转换
两个数据类型不同的变量做算术运算时,需要先进行数据类型转换
系统的自动类型转换按由低到高的精度进行
数据类型自动转换规则:
数据转换示例
//两个byte型数据相加
public class Add_two_byte{
public static void main(String args[]){
byte a = 5;
byte b = 3;
//byte c = a+b; 错误,两个操作数都转成int型
int c = a+b; //正确操作
System.out.println(a+"+"+b+"="+c);
}
}
运算符
移位运算符
- 左移(低位补0):a<<b
- 带符号右移(除符号位保持原样,其他位补0):a>>b
- 无符号右移(高位补0):a>>>b
移位运算符适用数据类型:byte、short、char、int、long,对低于int型的操作数将先自动转换为int型再移位;
计算移位位数
对于int型整数移位a>>b,系统先将b对32取模,得到的结果才是真正移位的位数;
对于long型整数移位时a>>b ,则是先将移位的位数b对64取模,所得结果为真正移位的位数。
运算符的优先级
优先级从高到低:单目运算符–>算术运算符–>移位运算符–>关系运算符–>位运算符–>逻辑运算符–>条件运算符–>赋值运算符