Java 中 Long 和 Int 数据类型的区别
本文将讨论 Java 中 int 和 long 数据类型之间的区别,并解释包装类 Integer 和 Long。我们将了解这些数据类型和包装类之间的区别,并能够根据场景决定使用哪一种。
Java 中的 int 和 long 数据类型
int 数据类型是 Java 中存储整数的原始数据类型。这意味着 int 指定变量值的大小和类型。但是,它不能调用任何方法。int 的大小是 4 个字节。它可以存储从 -2,147,483,648 到 2,147,483,647 的值。
long 数据类型也是 Java 中另一种 8 字节的原始数据类型。它有比 int 更宽的范围来存储整数。long 数据类型用于保存 int 无法保存的较大整数。它可以存储从 -9,223,372,036,854,775,808 到 9,223,372,036,854,775,807 的值。
例如,创建一个带有 int 数据类型的变量 num1 和带有 long 数据类型的 num3。将 100 分配给 num1,将 15000000000L 分配给 num3。在控制台中打印变量。再次创建另一个具有相同数据类型的变量 num2,并分配一个值 2147483648。然后,打印 num2 变量。请注意,这些代码行应该写在类的 main 方法中。
第一个代码示例成功执行,但第二个示例遇到错误。这是因为值 2147483648 超出了 int 数据类型的范围。我们在 long 数据类型的值后面写上 L 来表示一个 long 值。
示例代码:
int num1 = 100;
long num3 = 15000000000L;
System.out.println(num1);
System.out.println(num3);
输出:
100
15000000000
示例代码:
int num2 = 2147483648;
System.out.println(num2);
输出:
Main.java:3: error: integer number too large
int num2 = 2147483648;
^
1 error
Java 中的 Integer 和 Long 包装类
包装类是一种特定类型的类,其对象可以存储原始数据类型。我们将讨论 Integer 和 Long 包装类。我们可以从包装器类创建包装器对象,它允许我们使用与对象关联的不同方法。
例如,创建一个包装类 Integer 的对象 myInt 并分配一个值 50。从包装类 Long 创建另一个对象 myLong 并分配一个值 326162165161616161。打印出变量 myInt 和 myLong。然后创建 String 包装类的两个对象,分别是 myString1 和 myString2。对每个 myInt 和 myLong 对象使用方法 toString()。最后,调用 length() 方法打印对象 myString1 和 myString2 的长度。
在下面的示例中,我们从包装类 Integer、Long 和 String 创建了对象。我们用对象调用了 toString() 和 length() 之类的方法。toString() 方法将值转换为字符串,我们可以使用 length() 方法来计算它们的长度。如果我们尝试从原始数据类型访问这些方法,我们将无法做到。因此,包装类让我们创建包装对象以使用各种操作的方法。
示例代码:
Integer myInt = 50;
Long myLong = 326162165161616161L;
System.out.println(myInt);
System.out.println(myLong);
String myString1 = myInt.toString();
System.out.println(myString1.length());
String myString2 = myLong.toString();
System.out.println(myString2.length());
输出:
50
326162165161616161
2
18
Java 中的 int 和 Integer 之间的差异以及 long 和 Long 之间的区别
int 或 long 与 Integer 和 Long 之间的主要区别在于数据类型是原始类型,而包装类是非原始类型。原始数据类型保存特定值,而包装类的对象只是指向存储数据位置的指针。
Integer myInt = new Integer(5);
int num = 5
上面的 myInt 对象只是一个指向数据 5 位置的指针。存储 myInt 对象的内存包含值 5 位置的内存地址。它只是对值位置的引用。同时,存储变量 num 的内存包含值 5。
这个概念可以用 null 值来形象化。我们可以将 myInt 对象设置为空值,但我们不能对 num 变量执行相同操作。对象可以引用空地址,因为对象是引用类型。int 数据类型不能包含空值,因为 int 是原始类型,无法引用。因此,当我们将 null 分配给一个对象时,它会输出为 null,但是当我们将其分配给 int 类型时,则会抛出错误。
示例代码:
Integer myInt = null;
System.out.println(myInt);
输出:
null
示例代码:
int num = null;
System.out.println(myInt);
输出:
Main.java:6: error: incompatible types: <null> cannot be converted to int
int num = null;
^
1 error
相关文章
如何在 Java 中延迟几秒钟的时间
发布时间:2023/12/17 浏览次数:217 分类:Java
-
本篇文章主要介绍如何在 Java 中制造程序延迟。本教程介绍了如何在 Java 中制造程序延时,并列举了一些示例代码来了解它。
如何在 Java 中把 Hashmap 转换为 JSON 对象
发布时间:2023/12/17 浏览次数:187 分类:Java
-
它描述了允许我们将哈希图转换为简单的 JSON 对象的方法。本文介绍了在 Java 中把 Hashmap 转换为 JSON 对象的方法。我们将看到关于创建一个 hashmap,然后将其转换为 JSON 对象的详细例子。
如何在 Java 中按值排序 Map
发布时间:2023/12/17 浏览次数:171 分类:Java
-
本文介绍了如何在 Java 中按值对 Map 进行排序。本教程介绍了如何在 Java 中按值对 Map
进行排序,并列出了一些示例代码来理解它。
如何在 Java 中打印 HashMap
发布时间:2023/12/17 浏览次数:192 分类:Java
-
本帖介绍了如何在 Java 中打印 HashMap。本教程介绍了如何在 Java 中打印 HashMap 元素,还列举了一些示例代码来理解这个主题。
在 Java 中更新 Hashmap 的值
发布时间:2023/12/17 浏览次数:146 分类:Java
-
本文介绍了如何在 Java 中更新 HashMap 中的一个值。本文介绍了如何在 Java 中使用 HashMap 类中包含的两个方法-put() 和 replace() 更新 HashMap 中的值。
Java 中的 hashmap 和 map 之间的区别
发布时间:2023/12/17 浏览次数:79 分类:Java
-
本文介绍了 Java 中的 hashmap 和 map 接口之间的区别。本教程介绍了 Java 中 Map 和 HashMap 之间的主要区别。在 Java 中,Map 是用于以键值对存储数据的接口,
在 Java 中获取用户主目录
发布时间:2023/12/17 浏览次数:218 分类:Java
-
这篇文章向你展示了如何在 Java 中获取用户主目录。本教程介绍了如何在 Java 中获取用户主目录,并列出了一些示例代码以指导你完成该主题。
Java 中 size 和 length 的区别
发布时间:2023/12/17 浏览次数:179 分类:Java
-
这篇文章教你如何知道 Java 中大小和长度之间的区别。本教程介绍了 Java 中大小和长度之间的区别。我们还列出了一些示例代码以帮助你理解该主题。
Java 中的互斥锁
发布时间:2023/12/17 浏览次数:111 分类:Java
-
了解有关 Java 中互斥锁的一切,在计算机科学领域,互斥或互斥被称为并发控制的属性。每台计算机都使用称为线程的最小程序指令序列。有一次,计算机在一个线程上工作。为了更好地理解,

