day02-数据类型转换_强制转换和小数的转换
This commit is contained in:
27
day02/src/com/inmind/type_cast01/Demo03.java
Normal file
27
day02/src/com/inmind/type_cast01/Demo03.java
Normal file
@@ -0,0 +1,27 @@
|
||||
package com.inmind.type_cast01;
|
||||
/*
|
||||
数据转换---强制转换(重点)
|
||||
强制转换的格式:
|
||||
被转换到的数据类型 变量名 = (被转换到的数据类型)要被转换的数值;
|
||||
数据类型 变量名 = (数据类型)被转数据值;
|
||||
byte b1 = (byte) (b+i);
|
||||
强制转换:当要把大范围的数据类型赋值给小范围的数据类型时,要使用强制转换
|
||||
|
||||
注意:强转的结果是会发生精度丢失,切忌使用
|
||||
*/
|
||||
public class Demo03 {
|
||||
public static void main(String[] args) {
|
||||
//定义字节变量
|
||||
byte b = 1;
|
||||
//定义整型变量
|
||||
int i = 2;
|
||||
//2者相加
|
||||
int result = b+i;//自动转换,1字节的byte b 自动提升为int
|
||||
System.out.println(result);
|
||||
//结果是一个字节就可以表示的数据,我们能不能使用字节来接收呢???可以
|
||||
//byte result1 = (byte) b+i;//含义:先将变量b强转为byte,再加i,由于i还是int类型,还是自动提升了
|
||||
byte result1 = (byte) (b+i);//含义:()在java中可以表示优先执行,b+i先运算,然后再使用强转格式
|
||||
System.out.println(result1);
|
||||
|
||||
}
|
||||
}
|
||||
18
day02/src/com/inmind/type_cast01/Demo04.java
Normal file
18
day02/src/com/inmind/type_cast01/Demo04.java
Normal file
@@ -0,0 +1,18 @@
|
||||
package com.inmind.type_cast01;
|
||||
/*
|
||||
小数的强转为整数:直接将小数点后面的数给“砍掉”
|
||||
*/
|
||||
public class Demo04 {
|
||||
public static void main(String[] args) {
|
||||
//定义double变量
|
||||
double d = 3.94;
|
||||
System.out.println("变量d的值:"+d);
|
||||
//小数直接赋值给int型
|
||||
int i = (int) d;
|
||||
System.out.println("变量i的值:"+i);
|
||||
|
||||
float f = 3.14F;
|
||||
int i2 = (int) f;
|
||||
System.out.println(i2);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user