Java基础一
语言基础
1、数据类型
1.1基本数据类型
1)整数
类型 | 字节 | 取值范围(B) | 取值范围(D) |
---|---|---|---|
Byte | 1字节 | -2^7 ~ 2^7-1 | -128 ~ 127 |
short | 2字节 | -2^15 ~ 2^15-1 | -32768 ~ 32767 |
int | 4字节 | -2^31 ~ 2^31-1 | -2147413648~2147483647 |
long | 8字节 | -2^63 ~ 2^63-1 | -9223372036854775808 ~ 9223372036854775807 |
整数默认为int型,如果要用long,需要在数值的后边加L
例:
long i=12L;
2)小数
类型 | 字节 | 负数取值范围(D) | 取值范围(D) |
---|---|---|---|
float | 4字节 | -3.4E38 ~ -1.4E-45 | 1.4E-45 ~ 3.4E38 |
double | 8字节 | -1.7E308 ~ -4.9E-324 | 4.9E-324 ~ 1.7E308 |
1.4E-45 等价于 1.4*10^(-45)
浮点数默认为double型,如果要用float,需要在数值的后边加F
例:
float i=2.1F
3)布尔
类型 | 字节 | 取值范围 |
---|---|---|
boolean | 1字节 或 4字节 | true / false |
boolean可直接赋值true或false,也可以赋值一个结果为true或false的算式。
4)字符
类型 | 字节 | 取值范围 |
---|---|---|
char | 2字节 | 0 ~ 65535 |
char用的是Unicode字符集,Unicode中每个字符对应的是十位数。
例:
char c1=‘A’;(直接赋值)
char c2=65;(通过十进制转换)
char c2=’\u0041’;(通过十六进制的41转换)
1.2引用数据类型
1)字符串
类型 | 字节 | 取值范围 |
---|---|---|
String | 双引号之间的任意值 |
例:
String s=" A 3 你";
2)数组?
3)对象?
.
.
2、运算符
2.1算数运算符
普通计算符号 :+ 、- 、 * 、 / 、 %(求余)
一元运算符:++(递增)、 --(递减)
2.2赋值运算符
操作符 | 描述 |
---|---|
= | 等号右边的值赋给左边 |
+= | 求和后赋值 |
-= | 。。 |
*= | 。。 |
/= | 。。 |
%= | 求余后赋值 |
2.3关系运算符
操作符 | 描述 |
---|---|
> | 大于 |
< | 小于 |
>= | 大于等于 |
<= | 小于等于 |
== | 等于 |
!= | 不等于 |
2.4逻辑运算符
操作符 | 描述 |
---|---|
&& | 与(且) |
II | 或 |
! | 非(取反) |
2.5三元运算符
布尔表达式?结果1 : 结果2
3、类型的转换
3.1自动转换
目标类型大于源类型
例:
short s=12;
int i=s;
3.2强制转换
目标类型小于源类型
例1:
short s=12;
byte b=(byte)s;
//s=12
若整数长度不够或小数转整数则数据截断
例2:
double d=2.3;
int i=(int)d;
//i=2
4、流程控制语句
4.1选择结构
1)if 选择结构
对表达式进行判断,若真则进行代码,若否则跳过
if(布尔表达式){
//代码
}
2)if else 选择结构
对表达式进行判断,若真则进行代码1,若否则执行2
if(表达式){
//代码1
}else{
//代码2
}
3)多重if 选择结构
看哪个表达式为真则执行哪个。
相互排斥,执行一块代码后其他均不执行。
if(布尔表达式1{
//代码1
}else if(表达式2){
//代码2
}else if(表达式3){
//代码3
}else{
//代码4
}
4)嵌套if 选择结构
外层满足后执行内层,注意逻辑。
if(表达式1){
if(表达式2){
//代码1
}else{
//代码2
}
}
4.2分支结构
case 具有穿透效果, 在后边加break可以跳出。
switch(变量或表达式){
case 值1://代码1
case 值2://代码2
case 值3://代码3
}
4.3循环结构
1)while 循环
直到布尔表达式为false时才会退出循环结构
首次判断不满足时,则一次都不会执行。(先判断、再执行)
while(布尔表达式){
//逻辑代码(循环)
}
2)do while 循环
先执行,再判断。(适用于循环次数不明确的情况)
do{
//代码(循环)
}while(布尔表达式);
3)for 循环
先判断、再执行(近似while)
for(初始部分;循环条件;迭代部分){
//循环操作
}
4.4流程控制
break : 终止、跳出 switch或循环结构。
for(int i=1;i<=5;i++){
if(i==3){
break; //1,2
}
}
continue: 结束这次循环,进入下一次循环。
for(int i=1;i<=5;i++){
if(i==3){
continue; //1,2,4,5
}
}