草庐IT

long-integer

全部标签

Java 的 L 号(长)规范

似乎当你在Java中输入一个数字时,编译器会自动将其读取为整数,这就是为什么当你输入(long)6000000000(不在整数范围内)时,它会提示6000000000不是整数。为了纠正这个问题,我必须指定6000000000L。我刚刚了解了这个规范。是否还有其他数字规范,例如short、byte、float、double?拥有这些似乎很好,因为(我假设)如果您可以指定您输入的数字是一个短数字,那么java就不必强制转换它-这是一个假设,如果我错了,请纠正我.我通常会自己搜索这个问题,但我什至不知道这种数字规范叫什么。 最佳答案 lo

Java 的 L 号(长)规范

似乎当你在Java中输入一个数字时,编译器会自动将其读取为整数,这就是为什么当你输入(long)6000000000(不在整数范围内)时,它会提示6000000000不是整数。为了纠正这个问题,我必须指定6000000000L。我刚刚了解了这个规范。是否还有其他数字规范,例如short、byte、float、double?拥有这些似乎很好,因为(我假设)如果您可以指定您输入的数字是一个短数字,那么java就不必强制转换它-这是一个假设,如果我错了,请纠正我.我通常会自己搜索这个问题,但我什至不知道这种数字规范叫什么。 最佳答案 lo

java - 如何检查Java中的两个数字相乘是否会导致溢出?

我想处理两个数字相乘导致溢出的特殊情况。代码如下所示:inta=20;longb=30;//ifaorbarebigenough,thisresultwillsilentlyoverflowlongc=a*b;这是一个简化的版本。在实际程序中,a和b在运行时来自其他地方。我想要实现的是这样的:longc;if(a*bwilloverflow){c=Long.MAX_VALUE;}else{c=a*b;}你建议我如何最好地编写这个代码?更新:a和b在我的场景中总是非负数。 最佳答案 Java8有Math.multiplyExact、M

java - 如何检查Java中的两个数字相乘是否会导致溢出?

我想处理两个数字相乘导致溢出的特殊情况。代码如下所示:inta=20;longb=30;//ifaorbarebigenough,thisresultwillsilentlyoverflowlongc=a*b;这是一个简化的版本。在实际程序中,a和b在运行时来自其他地方。我想要实现的是这样的:longc;if(a*bwilloverflow){c=Long.MAX_VALUE;}else{c=a*b;}你建议我如何最好地编写这个代码?更新:a和b在我的场景中总是非负数。 最佳答案 Java8有Math.multiplyExact、M

java - 如何按降序对 ArrayList<Long> 进行排序?

如何对ArrayList进行排序在Java中按降序排列? 最佳答案 这是您的list的一种方法:list.sort(null);Collections.reverse(list);或者您可以实现自己的Comparator排序并消除反向步骤:list.sort((o1,o2)->o2.compareTo(o1));或者更简单地使用Collections.reverseOrder()因为你只是倒车:list.sort(Collections.reverseOrder()); 关于java-如

java - 如何按降序对 ArrayList<Long> 进行排序?

如何对ArrayList进行排序在Java中按降序排列? 最佳答案 这是您的list的一种方法:list.sort(null);Collections.reverse(list);或者您可以实现自己的Comparator排序并消除反向步骤:list.sort((o1,o2)->o2.compareTo(o1));或者更简单地使用Collections.reverseOrder()因为你只是倒车:list.sort(Collections.reverseOrder()); 关于java-如

java - 为什么 int num = Integer.getInteger ("123") 会抛出 NullPointerException?

以下代码抛出NullPointerException:intnum=Integer.getInteger("123");我的编译器是否在null上调用getInteger,因为它是静态的?这没有任何意义!发生了什么事? 最佳答案 大局这里有两个问题:IntegergetInteger(String)没有做你认为它做的事情在这种情况下返回null从Integer到int的赋值导致自动拆箱由于Integer为null,NullPointerException被抛出要将(String)"123"解析为(int)123,您可以使用例如int

java - 为什么 int num = Integer.getInteger ("123") 会抛出 NullPointerException?

以下代码抛出NullPointerException:intnum=Integer.getInteger("123");我的编译器是否在null上调用getInteger,因为它是静态的?这没有任何意义!发生了什么事? 最佳答案 大局这里有两个问题:IntegergetInteger(String)没有做你认为它做的事情在这种情况下返回null从Integer到int的赋值导致自动拆箱由于Integer为null,NullPointerException被抛出要将(String)"123"解析为(int)123,您可以使用例如int

java - 比较盒装 Long 值 127 和 128

我想使用if条件比较两个Long对象的值。当这些值小于128时,if条件正常工作,但当它们大于或等于128时,比较失败。例子:Longnum1=127;Longnum2=127;if(num1==num2){//Worksok}上面的代码比较正常,但是下面的代码比较失败:Longnum1=128;Longnum2=128;if(num1==num2){//DoesNOTwork}为什么比较大于127的Long变量会出现问题?如果将变量数据类型更改为长原语,则比较适用于所有情况。 最佳答案 TL;DRJava缓存从-128到127的盒

java - 比较盒装 Long 值 127 和 128

我想使用if条件比较两个Long对象的值。当这些值小于128时,if条件正常工作,但当它们大于或等于128时,比较失败。例子:Longnum1=127;Longnum2=127;if(num1==num2){//Worksok}上面的代码比较正常,但是下面的代码比较失败:Longnum1=128;Longnum2=128;if(num1==num2){//DoesNOTwork}为什么比较大于127的Long变量会出现问题?如果将变量数据类型更改为长原语,则比较适用于所有情况。 最佳答案 TL;DRJava缓存从-128到127的盒