2016Java面试题精编版—类型转换_极悦注册

2016Java面试题精编版—类型转换


面试题:Which of the following will compile correctly?  ( D )

A short myshort=99S

B int t=”abc”.length()

C float z =1.0

D char c=17c

极悦注册

解析:short myshort=99S这句要执行自动装箱,调用shortvalue方法,显然99S无法得到值。

float z =1.0;改为 float z.of;就行了,系统默认的浮点数是double型。

Java中,length是属性,一般用来说明数组的长度;length()是方法,用来求数组中某个元素的字符串长度。

01.png

length()是字符串的方法,返回字符串的长度

S[1].length()就是”sdfgs”.length()值为5

Length是数组的属性,s.length的值为2

 

扩展知识:Java的数据类转换

Java的数据类分为三大类,即布尔型、字符型、和数值型,其中

,数值型又分为整型和浮点型。相对于数据类型,java的变量类型为布尔型boolean;字符型char;整型byteshortintlong;浮点型floatdouble。其中四种整型变量和两种浮点型变量分别对应于不同的精度和范围。此外,编程时还经常用到两种类变量,即stringdate.

(1)    数据类型转换的种类

Java数据类型的转换一般分为三种,分别是简单数据类型之间的转换、字符串与其他数据类型的转换、其他实用数据类型的转换。

(2)    简单数据类型之间的转换

Java中,整型、实型、字符型被视为简单数据类型,这些类型由第几道高级分别为(byte,short,char)—intlongfloatdouble

简单数据类型之间的转换又可分为:低级到高级的自动类型转换、高级到低级的强制类型转换、包装类过度类型能够转换。

1)  自动类型转换

低级变量可以直接转换为高级变量,这叫自动类型转换。例如,下面的语句可以在Java中直接通过;

02.png

如果低级别类型为char型,向高级类型(整型)转换时,会转换为对应的ASCII码值,例如

03.png

输出output99

对于byteshortchar三种类型而言,它们是相同级别的,因此不能相互自动转换,可以使用下述的强制类型转换。

04.png

输出:output:c;

2)  强制类型转换

将高级变量转换为低级变量时,情况会复杂一些,你可以使用强制类型转换如:

05.png

这种转换可能会导致溢出或精度的下降。

3)包装类过渡类型转换

Java的包装类就是可以直接将姜丹类型的变量表示为同一个类。Java共有6个包装类,冯别是BooleanCharacterIntegerLongFloatDouble,从字面上可以看出他们分别对应booleancharintlongfloatdouble.stringdate本身就是类,不存在包装类的概念。

在进行简单数据类型之间的转换(自动转换或强制转换)时,可以利用包装类进行中间过渡。一般情况下,首先声明一个变量,然后生成一个对应的包装类,就可以利用包装类的各种方法进行类型转换了。

更多Java视频Java教程尽在极悦Java培训,关注极悦官方微信,获得一手Java面试题


上一篇:极悦注册—Java EE中遗漏的10个重要的安全控制
下一篇:Java 面试题精编版—反射

开班信息