Java教程

第六节 Java基础语法3

本文主要是介绍第六节 Java基础语法3,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

JAVA基础语法3

类型转换

由于java是强类型语言,所以要进行有些运算的时候,需要用到类型转换。

由低到高:byte,short,char→int→long→float→double

运算中,不同类型的数据先转化为同一类型,然后再进行运算。

int i =128;
byte b=(byte)i;//内存溢出,byte最大是127
//强制类型转换 格式:(类型)变量名   由高→低
//自动类型转换 由低→高

System.out.println(i);//输出128
System.out.println(b);//输出-128

注意点:

  1. 不能对布尔值进行转换
  2. 不能把对象类型转换为不相干的类型
  3. 在把大容量转换为低容量的时候,强制类型转换
  4. 转换的时候可能存在内存溢出,或者精度问题!
System.out.println((int)23.7); //输出23
System.out.println((int)-45.89f); //输出-45

char c = 'a';
int d = c+1;
System.out.println(d);//输出98
System。out.println((char)d);//输出b

操作比较大的数的时候注意溢出的问题。

JDK7新特性,数字之间可以用下划线分割

int money = 10_0000_0000;//下划线并不会被输出
int years = 20;
int total =money*years;
System.out.println(total);//输出-1474836480,计算的时候溢出了
long total2 =money*years;
System.out.println(total2);//输出-1474836480,默认是int,转换之前已经存在问题了?

long total3 =money*((long)years;//先把一个数转换为long
System.out.println(total3);//输出20000000000

这篇关于第六节 Java基础语法3的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!