我们知道java中有8中数据类型,而类型转换就是可以把一个值从一种类型转换为另一种类型的过程,比如我们有字符串类型的数据"123",那么我们可以把它转换为一个int类型的数据。
而且从之前的数据类型看,每种数据类型都有不同的精度,把低精度数据类型转换为高精度数据类型,是不会出现溢出的,但是把高精度类型转换为低精度类型,就会出现溢出,数据丢失的现象。
数据类型转换有两种:隐式转换和显式转换。
一:隐式类型转换
隐式类型转换就是低精度类型向高精度类型的转换,这种转换程序会自动执行,我们不需要做操作。
下面是按照精度从低到高的排序:
byte < short < int < long <float < double
package Number;
public class Conver {
public static void main(String[] args) {
int a = 50;
float b = a;
System.out.println("b= "+b); //输出50.0
byte _byte = 123;
int _int = 12;
float _float = 32.09f;
double _double = 21.901;
char _char = 76;
System.out.println("byte和int类型运算结果:"+_byte * _int); //byte和int类型运算结果:1476
System.out.println("byte和float类型运算结果:"+_byte + _float); //byte和float类型运算结果:12332.09
System.out.println("int和double类型运算结果:"+_int / _double); //int和double类型运算结果:0.5479201862928633
System.out.println("double和char类型运算结果:"+(_double - _char)); //double和char类型运算结果:-54.099000000000004
}
}
根据上述代码,可以看到,最终的输出结果都是高精度的。所以刚好验证了上面说的,为隐式类型转换。
二:显示类型转换
当我们把高精度类型的数据转换为低精度时,必须要使用显示类型转换了(又称为强制类型转换)。
转换语法:(数据类型)值
注意:当把一个整数赋值给byte、short、int、long时,不能够超出这些变量的取值范围,否则必须进行强制类型转换。
public static void conver(){
int a = (int) 23.456; //double类型强制转为int类型
long l = (long) 33.22f; //float类型强制转为long类型
byte b = (byte) 1899; //1899超出了byte类型的取值范围
System.out.println("a= "+a); //23
System.out.println("l= "+l); //33
System.out.println("b= "+b); //107
}
上面代码进行强制类型转换的时候,明显的可以看到,数据丢失了精度,也就是一部分数据没有了。
三:代码注释及相关编码规范
为什么要加注释呢,一段代码功能实现了,可能只有写这段代码的人,才知道这段代码具体是要干什么的,而且时间长了,可能自己也忘了,那么我们加上注释,就不一样了,这样我们可以明确的知道这些代码是要实现什么。
1:代码注释
在代码中加入注释,可以提高代码的可读性,注释中包含程序的一些信息,也可以帮助我们更好地理解和维护,在Java文件的任何位置都可以加入注释,注释中的文字java不进行编译,所以所有的注释文字对程序不会产生任何影响。
java注释分为:单行注释、多行注释、文档注释。
(1)单行注释
“//”为单行注释,从注释位置开始,直到换行为止,这段代码都不会被java所编译。
语法: //注释内容
double d = 23.123; //定义double类型的变量并赋值 --》这就是单行注释
单行注释一般用在变量代表的含义、这句代码代表的什么意思,放在这些后面。
(2)多行注释
“/* */”为多行注释,符号“/*”和“*/”之间的内容都是注释,而且注释里的内容可以换行。
语法:
/*
*注释。。。。。
*/
public static int dome(int a,int b){
/*
* 返回两个值相加的结果 -->多行注释
* //可以加入单行注释
*/
return a + b;
}
上述代码就是多行注释,在多行注释中可以加入单行注释,但不可以再加入多行注释。
(3)文档注释
“/** */”为文档注释,符号之间的内容均为注释内容,当使用文档注释时,比如在类前面、类的成员变量前面、类的成员方法前面声明注释时,会被javadoc文档工具读取作为javadoc文档内容。
javadoc是Sun公司提供的一个技术,它从程序源代码中抽取类、方法、成员等注释形成一个和源代码配套的API帮助文档。也就是说,只要在编写程序时以一套特定的标签作注释,在程序编写完成后,通过Javadoc就可以同时形成程序的开发文档了。
javadoc命令是用来生成自己API文档的,使用方式:使用命令行在目标文件所在目录输入javadoc +文件名.java。
2:编码规范
良好的编码习惯,会为我们以后的日常维护与开发方便很多,下面根据阅读中的书籍及日常习惯总结如下:
(1)每条java语句要独占一行,而且要以分号结束(英文状态下的分号,中文会出现编译错误)。
(2)声明变量时,要每个变量独占一行,如果变量类型相同也要独占一行,为了方便加入注释,对于局部变量,声明的同时要进行初始化。
(3)空格的使用,尽量不要多个空格,这样没有意义,应做到每个字符间隔一个空格即可。
(4)对于类,由于日常开发可能会有多个类,需要在类前面加入注释,声明该类的作用即作者,对于方法,每个方法实现的功能不同,需要在方法前加入注释,声明该方法的作用。