精华内容
下载资源
问答
  • 直接给long类型的变量赋值时报错

    直接给long类型的变量赋值时报错:

    场景:在获取当前时间时默认给一个测试时间值 long类型,测试发现时间不正确。

    解决方案:

    正确的写法:long secondss=1323346899966L;才不会报错

    需要把时间整形值:转成Long  使用。

    展开全文
  • 主要讲解Java中基本数据类型,java long 类型与其java int类型的转换的几种方法,希望能大家做一个参考
  • java long 类型数据的赋值

    万次阅读 2017-10-12 09:59:52
    问题当程序出现较大的数值的时候(超过int类型:-2^31 到 2^31 - 1间),就需要将类型变成Long类型

    问题

    当程序出现较大的数值的时候(超过int类型:-2^31 到 2^31 - 1间),就需要将类型变成Long类型。

    long l = 1507772738542;
    Long l1 = (long)1507772738542;

    以上的写法,在编译的时候会报错,这里写图片描述

    大概的意思就是数据太长,超过了int类型的值。

    解决

    Long l = 1507772738542L;

    在数据的后面加上 L 或者 l 都可以。

    展开全文
  • 原文出处: Javalong类型直接赋值大数字的问题 作者: Jet Mah from Java堂 声明: 可以非商业性任意转载, 转载时请务必以超链接形式标明文章原始出处、作者信息及此声明! 在Java中执行如下的代码: long number = ...

    原文出处: Java中long类型直接赋值大数字的问题
    作者: Jet Mah from Java堂
    声明: 可以非商业性任意转载, 转载时请务必以超链接形式标明文章原始出处、作者信息及此声明!
    在Java中执行如下的代码:

    long number = 32322355744;
    编译的时候会出现一个错误,提示“过大的整数: 32322355744”,如果在Eclipse中书写上面的代码,提示的是“The literal 32322355744 of type int is out of range”。可以看出,在Java代码中直接书写的数字是int类型的,就是说数字的范围在 -2^31 到 2^31 - 1 这个范围之中,无论将这个数字赋值给什么类型。

    不过有的时候需要直接赋值大的数字,比如写JUnit测试的时候。这个时候可以使用 Long.parseLong() 转换下就可以了。 这个时候可以这样赋值:

    long number = 32322355744L;

    展开全文
  • java中的类型赋值常见错误

    千次阅读 2017-10-05 19:52:06
    Java中float、double、long类型变量赋值添加f、d、L尾缀问题 添加尾缀说明 我们知道Java在变量赋值的时候,其中float、double、long数据类型变量,需要在赋值直接量后面分别添加f或F、d或D、l或L尾缀来说明。  ...

    Java中float、double、long类型变量赋值添加f、d、L尾缀问题

    1. 添加尾缀说明

        我们知道Java在变量赋值的时候,其中float、double、long数据类型变量,需要在赋值直接量后面分别添加f或F、d或D、l或L尾缀来说明。
        其中,long类型最好以大写L来添加尾缀,因为小写l容易和数字1混淆。
        例如:

    long lNum = 1234L;
    float fNum = 1.23f;
    double dNum = 1.23d;

      这是Java语法规定,不添加尾缀很容易引起编译器报错,并且程序可读性也会变差。

    1. 不添加尾缀也不会报错的情况

        Java语言中,整数直接量(例如:1、2、10等),JVM虚拟机是默认为int类型数据的。所以,当整数直接量赋给long、float或者double,而不添加尾缀,虚拟机也会直接将int类型数据自动转换为对应类型然后赋值。因为数据长度短的转换为长的并不会造成数据丢失,所以默认可以自动转换。 
        例如:

    long lNum = 5; //不报错,因为int自动转换为long类型,不会报错
    float fNum = 7; //不报错,因为int自动转换为float类型,不会报错
    double dNum = 10; //同上

      但是,当浮点直接量(例如:1.2等),JVM虚拟机默认为double类型,如果直接赋值给float就会引起编译器报错。

    float fNum = 1.2; //报错,因为1.2虚拟机是默认为double类型,不能直接赋值给float类型变量
    float fNew = 1.3f;//正确,因为尾缀添加了f,即告诉了虚拟机1.3属于float类型变量

    1. 总结

        所以,当Java中遇到这三种类型变量需要赋直接量时候,最好都添加上相应的尾缀。这样不仅会防止编译器报错,也会增加程序的可读性。
        但是下面这种情况就算添加尾缀也是错的,因为尾缀仅是为了告诉虚拟机该直接数属于什么数据类型,而不能实现数据类型强制转换。

    long lNum = 1.2L; //错误,double类型数据不能直接赋值给long类型
    long lNew = (long)1.2; //正确,double类型数据强制转换为long类型
    一般这种题在笔试的时候容易作为java基础来出题,所以自己学习一下啦!!祝大家爱都能早日找到自己喜欢的工作!共勉

    展开全文
  • 2. Long类型赋值最好加L,不加L的情况将采取自动转换) package sty1; public class test1 { public static void main(String[] args) { long l1=2147483647;//取值大小在int类型取值范围内,将采取类型自动...
  •  我们知道Java在变量赋值的时候,其中float、double、long数据类型变量,需要在赋值直接量后面分别添加f或F、d或D、l或L尾缀来说明。  其中,long类型最好以大写L来添加尾缀,因为小写l容易和数字1混淆。  例如:...
  • 但算法思路和实现过程万无一失,经过仔细排查,终于发现了一个一直以来都被忽视掉的Java基本数据向上转型溢出问题。 话不多说,直接上代码: public class Int2LongOverflow { public static void main(String[] ...
  • Java中long和Long赋值加L

    万次阅读 2013-05-29 09:59:53
    Java中执行如下的代码: long number = 26012402244;  编译的时候会出现一个错误,提示“过大的整数: 32322355744”,如果在Eclipse中书写...可以看出,在Java代码中直接书写的数字是int类型的,就是说数字的范
  • 整数型:byte short int long 浮点型:float double 布尔型:boolean 字符型:char 1、char占用两个字节 2、char的取值范围:[0~65535] 3、char类型的字面量使用单引号括起来。 5、char可以存储一个汉字。 ...
  • Javalong和double类型赋值操作为什么不是原子性的?
  • 咱们先来看一段很简单的Java代码 这段代码非常简单,没有任何技术含量。但是,如果我们把这段代码...我们知道,Java语言中有4种整数类型,分别是byte、short、int和long。其中,Java编译器对byte和short类型的变...
  • JavaScript 无法处理 Java 的长整型 Long 导致精度丢失,具体表现为主键最后两位永远为 0,解决思路: Long 转为 String 返回 https://www.jianshu.com/p/fbcdcfc7cd12 LambdaQueryWrapper<AuthorityEntity&...
  • 这样赋值: long secondss=1384865444229; myeclipse报错说,因为在java中直接数值变量赋值,都默认只能在int范围之类,如果要给long赋值,必须这样写: long secondss=1384865444229L;才不会报错
  • 以上问题,在百度中搜答案的时候,竟发现大家语调一致地认为: long和double类型赋值不是原子性的。 but,其实不是这样的。 那你有想过吗,为什么同样是基本数据类型,byte ,int short它们的赋值就是原子性的呢? ...
  • 基本类型为什么是原子性的?和内存有关系还是什么?哪位大佬解释下原理? 百度看了下没有一个答案解释原理,都是照猫画虎,也不知道是真懂还是假懂
  • Java数组循环赋值

    2019-07-01 22:17:56
    我尝试使用一个for循环对一个String数组赋值,但是我打印出来的结果都是null。但是我每个数都是赋值进去了,不知道哪里有问题。 ``` public static void main(String[] args) { String []list = new ...
  • Java中执行如下的代码: long number = 26012402244; ... 编译的时候会出现一个错误,提示“过大的整数: 32322355744”,如果在Eclipse中书写上面的...可以看出,在Java代码中直接书写的数字是int类型的,就
  • Java基础知识面试题(2020最新版)

    万次阅读 多人点赞 2020-02-19 12:11:27
    文章目录Java概述何为编程什么是Javajdk1.5之后的三大版本JVM、JRE和JDK的关系什么是跨平台性?原理是什么Java语言有哪些...Java和C++的区别Oracle JDK 和 OpenJDK 的对比基础语法数据类型Java有哪些数据类型switc...
  • PS:命名规范,i代指int类型,l代指long类型,I代指Integer类型,L代指Long类型,2(transferTo); // 首先创建四个基本操作对象 Long L0 = 123456l; int i0 = 10; Integer I0 = new Inte...
  • 最为一个常识,我们都知道浮点型在内存中占用的是4个字节的空间,而long型占用的是...而long类型的范围是:-2^63~2^63-1(大概是9*10^18)。  我以前也是简单的记住就算完事了,对于它为什么会这样却没有考虑过。  
  • java基础类型long后面为什么要加L

    千次阅读 2020-04-14 10:55:43
    原因 java整型的默认(缺省)类型是 int 如果你要定义一个超过int表达范围的值,则需要在末尾加上一个L起到标识作用 让计算机识别到这是一个long类型。 ...
  • Java long数据类型

    万次阅读 2017-03-22 09:04:19
    long数据类型是64位有符号的Java原始数据类型。当对整数的计算结果可能超出int数据类型的范围时使用。 long数据类型范围是-9,223,372,036,854,775,808至9,223,372,036,854,775,807(-2^63至2^63-1)。 long数据...
  • 不含值的Long类型变量 testA Long类型变量 testB 直接赋值,不会引发异常。 不含值的 String类型变量 strA String类型变量 strB直接赋值,也同样不会引发异常。 以下是个小Demo例子...
  • java基本数据类型变量的赋值详解

    千次阅读 2016-07-13 11:58:25
    public class TestByte { ... //不报错==> 是因为要赋值给byte类型引用,编译器会自动检查右边的常量数值5是否在byte类型能表示的数据范围,结果是,就把5当做是byte类型,直接赋值给左边。 b = 1; b = b+1; //

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 179,868
精华内容 71,947
关键字:

java给long类型赋值

java 订阅