今天老师让被5道题 都是面试题

一共在学校学习30周 一周5道面试题 小白或者想找工作的可以背一背 应该有用

今天老师让背5道题 都是面试题。。。

周三考试

第一道面试题

i++和++i 的区别?

答案:

i++和++i 在单独使用时就是i=i+1;

而 a=++i 就相当于 i=i+1 a=i

(先 i=i+1 然后再使用 i 的值)

而 a=i++ 就相当于 a=i i=i+1

(先使用 i 的值然后再 i=i+1)

第二道面试题:

switch 语句能否作用在 byte 上,能否作用在 long

上,能否作用在String 上?

答案:

switch 能作用在 char、byte、short、int 及其对应的包装类,

不能作用在 long、double、float、boolean及其对应的包装类

JDK1.7 后可以作用在 string 上

switch 中可以是枚举类型

第三道面试题:

写出基本数据类型

答案:

byte、short、int、long

float、double

char、boolean

第四道面试题:

float f=3.4 是否正确?

答案:

不正确。

因为精度不准确,应该用强制类型转换,如下所示:float f=(float)3.4 或 float f =3.4f

在 java 里面,没小数点的默认是 int,有小数点的默认是 double;

int 转成 long 系统自动转换没有问题,因为后者精度更高

double 转成 float 就不能自动做了,所以后面必须要加上个 f;

第五道面试题:

short s1 = 1,s1=s1+1;有错吗?short s1 =1 ,s1+=1;有错吗?

答案:

第一题:short s1= 1; s1 = s1 + 1;

错! s1 + 1,s1 是 short 类型,1 是 int 型,s1 会自动转换为 int型的1,

与1相加后,得到int型的2,

要向左侧的 short 类型的 s1 看齐,即

需要通过强制类型转换。正确写法:s1 = (short) (s1 + 1);

第二题:short s1= 1; s1 += 1;

正确! 执行s1+=1;其实执行的是 s1 = (short) (s1 + 1); 其中会有一

个强制转换的过程。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值