Java中的自动类型转换
2023年11月9日00:45:18
自动类型转换
int score1 = 9;
double score2 = score1;
System.out.println(score2) // 9.0
自动勒种转换是需要的定的条件
- double型兼容int型,但是char型不能兼容int型
- 目标类型大于源类型,如 double 类型长度为 8 字节, int 类型为 4 字节,因此 double 类型的变量里直接可以存放 int 类型的数据,但反过来就不可以了
任务
public class HelloWorld{
public static void main(String[] args) {
double avg1=78.5;
int rise=5;
int avg2=avg1+rise;
System.out.println("考试平均分:"+avg1);
System.out.println("调整后的平均分:"+avg2);
}
}
```java
HelloWorld.java:5: error: incompatible types: possible lossy conversion from double to int
int avg2=avg1+rise;
^
1 error
以上代码哪里出现了错误? 答:应该把第五行的int 改成 double 因为第5行的avge1是int类型,double类型不能自动转换为int类型
Java中的强制类型转换
强制把double转换成int
double avg1 = 7.5;
int avg2 = (int)avg1;
Syetem.out.println(avg1); //7.5
Syetem.out.println(avg2); //7
通过强制类型转换将 75.8 赋值给 int 型变量后,结果为 75,数值上并未进行四舍五入,而是直接将小数位截断。
Java常量的应用
定义完,不能修改 语法: final double PI = 3.14
- final:常量关键字
- double:数据类型
- PI:常量名
Java中的算术运算符
加(+)减(-)乘(*)除(/)求余(%)自增(++)自检(--)跟JavaScript一样++、--
Java中的赋值运算符
Java中的比较运算符
- (>)
- <
- (>=)
- <=
- ==
- !=
Java中的逻辑运算符
- &&
- ||
- !
- ^(异或)
三元运算符
int score = (8>1)?"8大于1":"8小于1";
public class HelloWorld{
public static void main(String[] args) {
int score=50;
String mark = (score>60)?"合格":"不合格";
System.out.println("考试成绩如何:"+mark);
}
}