Java初学者知识点总结(二)Java语言基础
1、变量
变量 代表的就是内存中的储存空间
java中的变量:强类型,变量类型 必须和变量中数据的类型一致。
变量的定义:数据类型 变量名;如 int i;
变量的赋值:变量名=值;如 i=3;
同时定义并赋值:数据类型 变量名=值;如int i=3;
一起定义多个变量 int a,b,c; int a=3,b=4,c=5;
2、数据类型
1、基本数据类型
数据类型 | 字节及范围 |
---|---|
byte | 1字节 -128~127 |
short | 2字节 -32768~32767 |
int | 4字节 -2147483648~2147483647 |
long | 8字节 字面量超出int范围,字面值后必须加“L”或"l" |
float | 4字节 浮点类型的字面值默认为double类型 float面值后必须加“F”或“f” |
double | 8字节 |
char | 2字节 0~65535 存储unicode码(万国码)支持中文 |
boolean | 1字节 只有true和false不参与任何运算和类型转换 |
2、引用类
String ,是sun公司提供的一个类。
String 任何" "引起来的字面值 Unicode字符编码
3、基本数据类型的转换
允许程序在运行时 根据数据类型的需要 改变 数据的值。
数据类型1 变量名1 <–(右边给左边赋值) 数据类型2 变量2
long l = i; // i是int类型,在执行该程序时,l是long类型,会自动调整 右侧的int为long类型后,再赋值(自动类型转换)
1) 自动类型转换: 右侧类型的所有数据 都能包含在 左侧的数据类 型1中时(左侧类型的范围 大于 右侧的范围时)
byte --> short --> int --> long --> float --> double
char --> int
2)强制类型转换:右侧类型的所有数据 不能被完成包含在 左侧的数 据类型1中时(左侧类型的范围 小于 右侧的范围时)
语法: 类型1 变量1 = (类型1)值;
a) 高字节数据 赋值给 低字节,需要强转,数据可能会损失
b)浮点数 赋值给 整数, 需要强转,数据可能会损失
c)4种整数类型(带符号数)和char(无符号数)转换时,需要强转
d)boolean不参与类型 转换
4、运算符和表达式
表达式 把变量和字面值通过运算符链接起来的,形成的一个算式。
表达式中数据类型提升规则:a运算符b
1)、如果a和b有一个是double类型 ,则结果为double类型。
2)、如果a和b有一个是float类型 ,则结果为float类型。
3)、如果a和b有一个是long类型 ,则结果为long类型。
如果以上三种情况都不满足 ,则运算结果为int类型。
运算符
1)算术运算符:+ - * / %(取余)单目:++(自加)--(自减)
+操作时中有一个是String类型,则+变为字符拼接符。
a++(a–)先用后加(减)
++a(–a)先加(减)后用
2)赋值运算符:= += -+ *=...
注:复合赋值运算符不会发生类型的提升。
3)关系运算符 :== != >>=<<=
关系运算符的结果为boolean类型
4)逻辑运算符
二元逻辑运算符:把2个boolean的结果 再联系起来进行计算,再次 得到 boolean的结果。
①&&:逻辑与。两个数都为true结果才为true;有1个为false结果即为 false。
短路与,&&运算的第1个操作数是false,则右侧的表达式不再计算, 自动发生短路。
②||:逻辑或。两个数都为false结果才为false;有1个为true结果即为 true。
短路或,||运算的第1个操作数是true,则右侧的表达式不再计算, 自动发生短路。
一元逻辑运算符:
③! : 逻辑非。对1个boolean表达式的结果取反 true–>false false->true
5) 三元运算符/条件运算符
参与操作的数有 3个构成。
布尔表达式 ? 值1 : 值2
计算布尔表达式的值,如果是true,则结果是值1;如果是false,则 取值2.
运算符的优先级:
初 单 算 关 逻 条 赋
() 单目 算术 关系 逻辑 条件 赋值