A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

/**
byte,char,short(这三个平级计算的时候会自动转换成int类型进行计算)-->int-->float-->long-->double(向右自动转换)
1:int    型值可以赋值给所有数值类型的变量(必须要在适当范围内);
2:long   型值可以赋值给 long、float、double类型的变量
3:float  型值可以赋值给       float、double类型的变量
4:double 型值只能赋值给              double类型的变量
布尔型和其他基本数据类型之间不能相互转换
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
*/

public class TestBaseDataAutoChange{
/*boolean(比较特殊不能参与自动转换)
【byte(1)short(2) char(2)】int(4) long(8)float(4) double(8)
  */
public static void main(String[] args){
boolean a=true;
//boolean a1 = 1;//不兼容
byte b=120;
//byte b1=120.2;//损失精度,数据默认为double类型的
short c =1000;
//short c1 = 1000.2;//损失精度,数据默认为double类型的
char d='z';
char d1=123; //直接转换成  {  字符
//char d2=123.2;//损失精度,数据默认为double类型的
int e=1000;
//int e1 = 1000.1;//损失精度,数据默认为double类型的
int e_char='d';
float f=3.1415926F;
float f1=(int)3.1415926F;
long g=876l;
long g1=876;
//long g2 = 876.2;//损失精度,数据默认为double类型的
double h=2.71828;
//int    型值给以赋值给所有数值类型的变量
System.out.println("int型值15给以赋值给所有数值类型的变量");
  short int_short=15;
  char int_char=15;
  int int_int = 15;
  long int_long = 15;
  float int_float = 15;
  double int_double = 15;
System.out.println("short类型:"+int_short+",char类型:"+int_char+",int类型:"+int_int);
System.out.println("long类型:"+int_long+",float类型:"+int_float+",double类型:"+int_double);
System.out.println("布尔型常量!"+a);
System.out.println("字节型常量!"+b);
System.out.println("字符型常量!"+d);
System.out.println("字符型常量!自动转换成对应字符   "+d1);
System.out.println("短整型型常量!"+c);
System.out.println("整型常量!"+e);
System.out.println("长整型常量!"+g);
System.out.println("长整型常量!自动int型"+g1);

System.out.println("单浮点型常量!"+f);
System.out.println("单浮点型常量! 强转int型"+f1);
System.out.println("双浮点型常量!"+h);
}}

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马