long l = 1 对or错、Long l = 1 对or错,最基础的你对了吗?

在这里插入图片描述

最近回头看了看以前的最基础的,发现其中有很知识点很有乐趣乐趣很多,顺便问了下问了一下其他朋友,几乎全军覆灭。我们来看看一下知识点,你了解多少?

long l = 1;对or错

long l = 1;
//对吗

有人说对,有人说错。说错的人说

long l = 1L;
//这样才对

你的理解呢?

double d = 1;对or错

double d = 1;
//对吗

有人说对,有人说错。说错的人说

double d = 1d;
//这样才对,当是整数时后面必须加d或D,小数时无所谓如:
//double d = 1.0;这样是对的

你的理解呢?

float f = 1;对or错

float f = 1;
//对吗

有人说对,有人说错。说错的人说

float f = 1f;
//这样才对,和Duble雷同,当是整数时后面必须加f或F,小数时无所谓如:
//float f = 1.0;这样是对的

你的理解呢?

Long l = 1;对or错

Long l = 1;
//对吗

有人说对,有人说错。说错的人说

Long l = 1L;
//这样才对

你的理解呢?

Double d = 1;对or错

Double d = 1;
//对吗

有人说对,有人说错。说错的人说

Double d = 1d;
//这样才对,当是整数时后面必须加d或D,小数时无所谓如:
//Double d = 1.0;这样是对的

你的理解呢?

Float f = 1;对or错

Float f = 1;
//对吗

有人说对,有人说错。说错的人说

Float f = 1f;
//这样才对,和Duble雷同,当是整数时后面必须加f或F,小数时无所谓如:
//Float f = 1.0;这样是对的

你的理解呢?

6个问题你的答案是什么,我想你心中已有答案,带着你的答案,我们一起去揭秘上面6个问题,看看和你想的是不是一样。
long l = 1;double d = 1; float f = 1;都是对的,为什么呢?因为java默认整数时int类型,再加上java的向上转型,也就是说这样定义是符合java规范的。

那么long l = 2147483648;这样对吗?为什么要写2147483648呢?因为2147483647是int的最大值,知道答案了吗?错的,因为他超过了int的最大值,long l = 2147483648L这样就对了。

Long l = 1;Double d = 1; Float f = 1;都是错的。为什么呢?Double里面的装箱,只会装进double类型的,而1默认是int类型所以会报错。Double d = 1.0; Float f = 1.0对吗?Double d = 1.0;
这个是对的,因为java默认小数是double类型,所以是正确的。但是Float f = 1.0是错了。因为double的精度高于float无法向下转型。所以float f = 1.0f; Float f = 1.0f;这样定义才是对的。

最后留下一个是思考题:

int i = 2147483647;
i = i + 1;
System.out.println(i);

结果是什么呢?自己试一下!!!

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值