Java小白的学习路
第一节
关键字
1. abstract 2.assert 3.boolean 4.break 5.byte
6.case 7.catert 8.char 9.class 10const
11.continue 12.defsult 13.do 14. double 15.else
16 enum 17.extends 18.final 19.finally 20.float
21. for 22.goto 23.if 24.implements 25.import
26.instanceof 27 .int 28.interface 29.long 30.native
31.new 32.package 33.private 34.protected 35.public
36.return 37.short 38.static 39.strictfp 40super
41.switch 42.synchronized 43.this 44.throw 45.throws
46.transient 47.try 48.void 49.volatile 50.while
除了这里的五十个关键字以外 true false null也不能被当作是标识符
这五十个单词都是全是小写的 这里 还有俩个Java的保留字 const 和 goto 标识符不能用关键字
2.标识符只能用字母数字下划线(——)美元符(¥)组成但不能包含@% 下划线(——)和美元空格组成
3.还不能艺以数字开头 标识符区分大小写 大写和小写就是两个不同的不同的标识符
4.标识符不能是关键字
三注释
1.单行注释
格式:每行都以//开头
2.文档注释:注释多行内容
格式:以/**开头 以*/结尾
3.多行注释
格式;以/*开头 以*/结尾
1.4变量
变量通过三个元素来描述变量:变量类型 变量名 变量值
定义变量的两种格式
格式一:声明变量时并且赋值:int a=27;
格式二先声明变量:String tel;然后给变量赋值:tel =119;
注意
1.变量明必须是一个有效的标识符
2.变量名不可使用Java的关键字
3.变量名不能重复
第二.节
2.1基本类型
为了方便内存管理系统根据变量类型更加合理的分配内存空间
会把我们常见的数据,分成不同类型不同类型分配的内存大小是不同的,这个大小的单位就是字节Byte
1.整数型 类型名称 字节空间 取值范围
byte 1 -2^7到2^7-1 或者 -128 到127
short 2 -2^15到2^15-1
inrt 4 -2^31到2^31-1
long 8 -2^63到2^61-1
2.浮点型
float 4 单精度,对小数要求精度不高
double 8 双精度,精确的小数不分并操作值
3.字符
char 2 0到655345
4.布尔
boolean 1 真true 假false
2.6引用类型
除了基本类型以外的都是引用类型 字符串类型的数据需要使用双引号包裹
引用类型是一个对象类型
他的值是指向内存空间的引用,就是地址,所指向的内存中保存着的变量所表示的一个值或者用类数组 如:类 ,接口 ,数组........
3.1整数类型的字面值是int类型就是说我们只要写下一个整数类型就被认为是int类型
3.2浮点数类型的字面值类型是double类型就是说我们只要写下一个小数类型就被认为是double类型
byte,short ,char三种比int小的整数可以用范围内的值直接赋值(取值范围)
3.4字面值后缀L D F
long x =99999999999L;//字面值是int类型,需转成long类型的数据,加字面值后缀L
float b = 3.0F;//3.0字面值是double类型,加后缀F会变成float类型
double d = 3D;//3字面值是int类型,加后缀D,会变成double类型
3.5进制前缀
0b - 标识这是2进制 ,如:0b0101
4.1小到大(隐式转换)
byte m=120;
int n=m;小转大,右面的m是小类型,给左面的n大类型赋值,可以直接使用
float f=3.2f;double d = f; -->可以执行
4.2大到小(显式转换)量大的类型转换为容量小的类型时必须使用强制类型转换。
int x = 999;
byte y =(byte)x;//大转小,右面x给左面的y小类型赋值,不可以,需要强制类型转换
- 转换过程中可能导致溢出或损失精度
例如:int i =128; byte b = (byte)i; //打印的结果是-128
因为 byte 类型是 8 位,最大值为127,所以当 int 强制转换为 byte 类型时,值 128 时候就会导致溢出。 - 浮点数到整数的转换是通过舍弃小数得到的而不是四舍五入
例如:fioat f=32.7f; int a2=(int)f;打印的结果是32
不能对boolean类型进行转换布尔类型1
口诀:小到大直接转 打到小 ,强制转 浮变整, 小数没
低 ------------------------------------> 高
byte,short,char→ int→ long→float→double
5.1计算结果的数据类型,与最大的数据类型一直致(字节数)
System.out.println(3/2);//1,int/int,得到的结果类型还是int
System.out.println(3/2d);//1.5,int/double。得到的结果是double
5.2 byte,short,char三种比int小的整数,运算时会先自动转换成int
byte a = 1;