j2se——java基础
1、数据类型转换分为几种常见情况:1、自动转换2、强制转换3、隐含转换4.包装类过渡类型转换5.String字符串型与其他类型数据的转换6.String型与Date型的转换下面讲述的是第1,4,5种情况。
2、自动转换从低级数据类型转化为高级数据类型时自动转换。其中数据类型从低至高为:(byte-short-char)-int-long-float-double。其中byte-short-char这三个是平级关系,转化时需要进行强制转化(byte,short,char之间不会互相转换,并且三者在计算时首先转换为int类型;)
3、包装类过渡类型转换在 我们讨论其它变量类型之间的相互转换时,我们需要了解一下Java的包装类,所谓包装类,就是可以直接将简单类型的变量表示为一个类,在执行变量类型的 相互转掊测汹权换时,我们会大量使用这些包装类。Java共有六个包装类,分别是Boolean、Character、Integer、Long、Float和 Double,从字面上我们就可以看出它们分别对应于boolean、char、int、long、float和double。而String和 Date本身就是类。所以也就不存在什么包装类的概念了。在进行简单数据类型之间的转换(自动转换或强制转换)时,我们总是可以利用包装类进行中间过渡。一般情况下,我们首先声明一个变量,然后生成一个对应的包装类,就可以利用包装类的各种方法进行类型转换了。例如:例1,当希望把float型转换为double型时:floatf1=100.00f;FloatF1=newfloat(f1);Doubled1=F1.doubleValue();//F1.doubleValue()为Float类的返回double值型的方法当希望把double型转换为int型时:doubled1=100.00;DoubleD1=newDouble(d1);inti1=D1.intValue();当希望把int型转换为double型时,自动转换:inti1=200;doubled1=i1;简单类型的变量转换为相应的包装类,可以利用包装类的构造函数(因为进行数据转换时不是都可以进行自动转换的,或者有时强制转换又会出现许多问题,所以java提供了包装类,运用包装类中的数据转换方法进行数据的转换,不会出现自动转换或者强制转换出现的问题)。即:Boolean(booleanvalue)、Character(charvalue)、Integer(intvalue)、Long(longvalue)、Float(floatvalue)、Double(doublevalue)而 在各个包装类中,总有形为××Value()的方法,来得到其对应的简单类型数据。利用这种方法,也可以实现不同数值型变量间的转换,例如,对于一个 双精度实型类,intValue()可以得到其对应的整型变量,而doubleValue()可以得到其对应的双精度实型变量。
4、String字符串型与其他类型数据的转换通 过查阅类库中各个类提供的成员方法可以看到,几乎从java.lang.Object类派生的所有类提供了toString()方法,即将该类转换为字 符串。例如:Characrer,Integer,Float,Double,Boolean,Short等类的toString()方法 toString()方法用于将字符、整数、浮点数、双精度数、逻辑数、短整型等类转换为字符串。如下所示:inti1=10;floatf1=3.14f;doubled1=3.1415926;IntegerI1=newInteger(i1);//生成Integer类rFloatF1=newFloat(f1);//生成Float类rDoubleD1=newDouble(d1);//生成Double类r//分别调用包装类的toString()方法转换为字符串Stringsi1=I1.toString();Stringsf1=F1.toString();Stringsd1=D1.toString();Sysytem.out.println("si1"si1);Sysytem.out.println("sf1"sf1);Sysytem.out.println("sd1"sd1);