目录
数据类型:
数据类型 | 字节 | 范围 |
byte | 1B 8位 | -128 ~ 127 |
short | 2B 16位 | -32768 ~ 32767 |
int | 4B 32位 | -2^31 ~ 2^31-1 |
long | 8B 64位 | -2^63 ~ 2^63-1 |
floate | 4B 32位 | 1.4E-45 ~ 3.4E+38 , -1.4E-45 ~ -3.4E-45 ~ -3.4E+38 |
double | 8B 64位 | 4.9E-324 ~ 1.7E+308 , -4.9E-324 ~ -1.7E+308 |
char | 2B 16位 | 0~65535 |
boolean | true / false |
类型转换:
- 自动类型转换
两类型之间相互兼容 目标类型数据大于源数据类型数据
byte<short<int<long<float<double
char<int<long<float<double
- char类型与short类型都是2个字节 是否可以发生自动类型转换?
不可以,char类型取值范围是0~65535 short类型取值范围是‐32768~32767 两个区间并没有包含关系,所以不存 在谁 大于谁,所以不可发生自动类型转换
- byte类型是一个字节 char类型是两个字节 是否可以发生自动类型转换?
不可以,char类型取值范围是0~65535 byte类型的取值范围是‐128~127 byte类型的负数部分char并不包含,所 以byte 不可以向char进行自动类型转换
- 强制类型转换
两个类型之间需要相互兼容 目标数据类型小于源数据类型
- 布尔型和其它基本数据类型之间不能相互转换;
- byte型可以转换为short、int、、long、float和double;
- short可转换为int、long、float和double;
- char可转换为int、long、float和double;
- int可转换为long、float和double;
- long可转换为float和double;
- float可转换为double;
算术运算符:
运算符 | 运算 | 范例 | 结果 |
---|---|---|---|
+ | 正号 | ||
- | 负号 | ||
+ | 加 | ||
- | 减 | ||
* | 乘 | ||
/ | 除 | 7/5 | 1 |
% | 模(取余) | 7%5 | 2 |
++ | 自增(前) | a=2,b=++a; | a=2,b=3 |
++ | 自增(减) | a=2,b=a++; | a=3,b=2 |
-- | 自减(前) | a=2,b=--a; | a=1,b=1 |
-- | 自减(后) | a=2,b=a--; | a=1,b=2 |
赋值运算符:
运算符 | 运算 | 范例 | 结果 |
---|---|---|---|
= | 赋值 | a=3,b=2; | a=3,b=2; |
+= | 加等于 | a=3,b=2,a+=b;[a=a+b] | a=5,b=2; |
-= | 减等于 | a=3,b=2,a-=b;[a=a-b] | a=1,b=2; |
*= | 乘等于 | a=3,b=2; a *= b; | a=6,b=2 |
/= | 除等于 | a=3,b=2; a /= b; | a=1,b=2; |
%= | 模等于 | a=3,b=2; a %= b; | a=1,b=2; |
比较运算符:
运算符 | 运算 | 范例 | 结果 |
---|---|---|---|
== | 相等于 | 4 == 3 | false |
!= | 不等于 | 4 != 3 | true |
< | 小于 | 4 < 3 | false |
> | 大于 | 4 > 3 | true |
<= | 小于等于 | 4 <= 3 | false |
>= | 大于等于 | 4 >= 3 | true |
逻辑运算符:
运算符 | 运算 | 范例 | 结果 |
---|---|---|---|
& | 与 | true & true | true |
true & false | false | ||
false & false | false | ||
false & true | false | ||
| | 或 | true | true | true |
true | false | true | ||
false | false | false | ||
false | true | true | ||
^ | 异或 | true ^ true | false |
true ^ false | true | ||
false ^ false | false | ||
false ^ true | true | ||
! | 非 | !true | false |
! false | true | ||
&& | 短路与 | true && true | true |
true && false | false | ||
false && false | false | ||
false && true | false | ||
|| | 短路或 | true || frue | true |
true || true | true | ||
false || false | false | ||
false || true | true |
条件语句:
1.if语句:
if (判断条件){
执行语句
}
2.if...else 语句
if (判断条件){
执行语句1...
}else{
执行语句2...
}
3.if...else if... else 语句
if (判断条件 1){
执行语句1...
}else if(判断条件 2){
执行语句2...
}.
.
.else if(判断条件 n){
执行语句 n
}else{
执行语句 n+1
}
switch
switch(控制表达式){
case 目标值 1: 执行语句1 break;
case 目标值 2: 执行语句2 break;
case 目标值 n: 执行语句n break;
default:执行语句 n+1 break;
}
While 循环语句:
while (循环条件){
执行语句...
}
do...while 循环语句:
do{
执行语句...
}while(循环条件)
for 循环:
for(初始化表达式; 循环条件; 操作表达式){
执行语句...
}
嵌套循环:
for(初始化表达式; 循环条件; 操作表达式){
...
for(初始化表达式; 循环条件; 操作表达式){
执行语句...
}
...
}
99乘法表:
public class Dome1 {
public static void main(String[] args) {
//外层循环,变量 i 控制 1~9行
for (int i = 1; i <= 9; i++) {
//内层循环,变量j控制输出1~9行
for (int j = 1; j <= i; j++) {
//使用字符串拼接,打印内层循环执行语句
System.out.print(j+"*"+i+"="+j*i+"\t");
}
System.out.println("");
}
}
}
数据类型元素的默认值:
数据类型 | 默认初始值 |
---|---|
byte,short,int,long | 0 |
float,double | 0.0 |
char | '\u0000' |
boolean | false |
引用数据类型 | null |