[每日一题]Java 基本数据类型基础面试题

基础知识:

  1. java中基本类型数据范围从大到小:double>float>long>int>byte>char

  2. 隐式转换:数据范围小的可以被自动转化为大的。也就是“向上转型”:等号左边大数据类型,右边小数据类型,如果想要向下转型,就得强制类型转换,即加括号——float f = (float)3.4。

  3. java 的 char 类型变量是用来储存 Unicode 编码字符的,Unicode 字符集包含了汉字,所以 char 类型自然就能存储汉字,但是在某些特殊情况下某个生僻汉字可能没有包含在 Unicode 编码字符集中,这种情况下 char 类型就不能存储该生僻汉字了。

  4. JAVA中float与double的区别:不声明的时候,默认小数都用double来表示。如果要用float的话,则应该在其后加上f

  5. double 型占64位 (8字节),float型占32位(4字节),long型占64位(8字节),int 型占32位(4字节),short 2字节,byte 1字节。

  6. 整形和浮点型在内存中的表示方法是不一样的,对于浮点型来说,有一部分是用来表示有效位数的,有一部分是用来表示多少次方。这也是为什么long的数据类型比float小,long表示的最大数还比float小


问题:

  1. 问:如下程序语句有什么问题吗?
short  s1 = 1;
s1 = s1 + 1;    //无法编译,IDE 提示错误

short s2 = 1;
s2 += 1;    //2
  1. 问:java 中 char 类型变量能不能储存一个中文的汉字,为什么?

  2. 问:java 的 Integer 和 int 有什么区别?(3点:类型、初值、操作以及内置属性和方法)

  3. 问:java 的 switch 语句能否作用在 byte 类型变量上,能否作用在 long 类型变量上,能否作用在String 类型变量上?

  4. 问:能否在不进行强制转换的情况下将一个 double 值赋值给 long 类型的变量?

  5. 问:java 中 3*0.1 == 0.3 将会返回什么?true 还是 false?(浮点数不能完全精确的表示出来,一般都会损失精度。)

  6. 问:java 中 float f = 3.4; 是否正确?(向下转型)

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值