黑马程序员--Java语法基础中的例题和思考题

原创 2015年11月20日 20:37:45
------Java培训、Android培训、iOS培训、.Net培训、期待与您交流! -------


面试试题:

A:下面两种方式有区别吗?

float f1 = 12.345f;
float f2 = (float)12.345;

解答:前者12.345本身是一个float类型的数据,而后者12.345是个double类型的,经过强制转换赋值给f2


B:下面的程序有问题吗,如果有,在哪里呢?
byte b1 = 3;
byte b2 = 4;
byte b3 = b1 + b2;
byte b4 = 3 + 4;

 解答:第三行有问题,因为可能存在精度损失的情况。


C:下面的操作结果是什么呢?

byte b = (byte)130;

解答:-126


D:字符参与运算
是查找ASCII里面的值
'a' 97
'A' 65
'0' 48
System.out.println('a');
System.out.println('a' + 1);

E:字符串参与运算
这里其实是字符串的连接
System.out.println("hello"+'a'+1);
System.out.println('a'+1+"hello");
System.out.println("5+5="+5+5);
System.out.println(5+5+"=5+5");


F:面试题:
short s = 1;
s = s + 1;

short s = 1;
s += 1;
请问上面的代码哪个有问题?

解答:第一个有问题,因为第一个short类型的数据参与运算的时候,首先默认转换成int类型参与运算,但是又赋值给一个short类型的数据,这样可能会损失精度。而第二个运算中,扩展运算符隐含了一个强制类型转换,式子等价于

s=(short)s+1;


G:面试题

switch语句的表达式可以是byte吗?可以是long吗?可以是String吗?
解答:可以,不可以,JDK7以后可以







版权声明:本文为博主原创文章,未经博主允许不得转载。

黑马程序员--Java语法基础中的例题和思考题

(4)思考题和面试题: A:下面两种方式有区别吗? float f1 = 12.345f; float f2 = (float)12.345;                 解答:前者12.345本...
  • jingbocl
  • jingbocl
  • 2015年11月20日 20:37
  • 708

D2

(4)思考题和面试题: A:下面两种方式有区别吗? float f1 = 12.345f; float f2 = (float)12.345; 答:有区别,float f1=12.345f定义...
  • msq7487223
  • msq7487223
  • 2016年02月24日 22:34
  • 376

算法导论13章红黑树 思考题总结

13-1 (持久动态集合) 有时在算法的执行过程中我们会发现在更新一个动态集合时,需要维护其过去的版本。我们称这样的集合为持久的(persistent)。实现持久集合的一种方法是每当改集合被修改时,就...
  • chan15
  • chan15
  • 2015年10月20日 11:40
  • 541

黑马程序员:Java学习路线大揭秘连载2-JavaWeb篇!

编程语言Java,已经21岁了。从1995年诞生以来,就一直活跃于企业中,名企应用天猫,百度,知乎......都是Java语言编写,就连现在使用广泛的XMind也是Java编写的。Java应用的广泛已...
  • itcast_cn
  • itcast_cn
  • 2016年10月18日 17:44
  • 1477

float型float f=3.4是否正确?

答:不正确。精度不准确,应该用强制类型转换,如下所示:float f=(float)3.4
  • alesjia
  • alesjia
  • 2005年11月25日 22:21
  • 1201

ios 中的基本算数函数

iOS 数学函数
  • sunqiujing
  • sunqiujing
  • 2017年10月20日 15:55
  • 141

黑马程序员——Java基础---练习题

------Java培训、Android培训、iOS培训、.Net培训、期待与您交流! ------- Java基础---练习题 1.写出程序结果class Demo { public stat...
  • liu007004
  • liu007004
  • 2015年01月19日 16:35
  • 704

黑马程序员-java就业面试题大全(持续更新)

1、一个"java"源文件中是否可以包含多个类()?
  • zj3911507
  • zj3911507
  • 2014年06月20日 16:32
  • 1948

android 把float转换成Int

1、采用强转的方式 1 2 float a = 1.1L; //定义一个float型变量,变量名为a,值为1.1,L表示是浮点型 int b = (...
  • ThunderRong
  • ThunderRong
  • 2016年08月19日 16:00
  • 6926

JAVA--数据类型--转换--默认转换--精度

A:下面两种方式有区别吗? float f1 = 12.345f; float f2 = (float)12.345; //12.345首先是Double类型,大转小,精度! B:下面的程序有问...
  • lbdzb2000
  • lbdzb2000
  • 2018年01月24日 21:49
  • 9
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:黑马程序员--Java语法基础中的例题和思考题
举报原因:
原因补充:

(最多只允许输入30个字)