本文目录一览:
java为什么要有integer类型
int是JAVA八大基本数据类型(byte, short, int, long, char, boolean, float, double)之一。JAVA语言为八大基本数据提供了包装类,Integer对应是int类型的包装类,就是把int类型包装成Object对象。Java有2种不同的类型:引用类型和原始类型。int是Java的原始数据类型,Integer是int的封装类。Java为每个原始类型提供了封装类。
int是基本数据类型,Integer是int的一个包装类(wrapper),它是类而不是基本数据类型,其内部包含一个int型的数据。之所以使用Integer,主要是因为面向对象的思想。对象封装有很多好处,可以将属性和处理这些属性的方法结合在一起。例如,Integer类提供了parseInt()
等方法来处理int类型的数据。另一个重要原因是Java中大部分方法或类都是用来处理类类型对象的,例如ArrayList
集合类只能存储类对象。因此,如果想将int类型的数据存入List,必须将其包装成Integer类。所以Integer的存在是必要的。
基本数据类型与引用数据类型对照表:
原始类型 | 包装类 |
---|---|
boolean | Boolean |
char | Character |
byte | Byte |
short | Short |
int | Integer |
long | Long |
float | Float |
double | Double |
Integer类的使用方法:
- 属性:
static int MAX_VALUE
:返回最大的整型数;static int MIN_VALUE
:返回最小的整型数;static Class TYPE
:返回当前类型。 示例代码:
结果:System.out.println("Integer.MAX_VALUE:" + Integer.MAX_VALUE);
Integer.MAX_VALUE:2147483647
- 构造函数:
Integer(int value)
:通过int类型构造对象;Integer(String s)
:通过String类型构造对象。 示例代码:
Integer i = new Integer("1234");
- 方法:
byteValue()
:取得用byte类型表示的整数;int compareTo(Integer anotherInteger)
:比较两个整数;int compareTo(Object o)
:将该整数与其他类进行比较;static Integer decode(String nm)
:将字符串转换为整数;doubleValue()
:取得该整数的双精度表示;equals(Object obj)
:比较两个对象;floatValue()
:取得该整数的浮点数表示;static Integer getInteger(String nm)
:根据指定名确定系统特征值;hashCode()
:返回该整数的哈希码;intValue()
:返回该整型数所表示的整数;longValue()
:返回该整型数所表示的长整数;static int parseInt(String s)
:将字符串转换成整数;static int parseInt(String s, int radix)
:以radix为基数将s转换为十进制数;shortValue()
:返回该整型数所表示的短整数;static String toBinaryString(int i)
:将整数转为二进制字符串;static String toHexString(int i)
:将整数转为十六进制字符串;static String toOctalString(int i)
:将整数转为八进制字符串;toString()
:将该整数转换为字符串;static String toString(int i)
:将该整数转换为字符串;static String toString(int i, int radix)
:将整数i以基数radix的形式转换成字符串;static Integer valueOf(String s)
:将字符串转换成整数;static Integer valueOf(String s, int radix)
:将字符串以基数radix的要求转换成整数。 示例代码:
结果:String s1 = new String("1010"); System.out.println("Integer.parseInt(String s, int radix):" + Integer.parseInt(s1, 2));
Integer.parseInt(String s, int radix):10
integer在Java中是什么意思
Integer类在对象中包装了一个基本类型int的值。Integer类型的对象包含一个int类型的字段。 此外,该类提供了多个方法,能在int类型和String类型之间互相转换,还提供了处理int类型时非常有用的其他一些常量和方法。 最常用到的:实现int类型到String类型的转换。参考代码如下:
Integer I = new Integer(int i = 100);
String str = I.valueOf();
integer在java中是什么意思
意思就是说Integer是一个类,它提供了一些类型的转换方法。 int类型的包装类就是Integer类。 一个典型的运用就是:实现int类型到String类型的转换。 使用具体方法是:
Integer I = new Integer(int i = 1);
String str = I.valueOf();
java中 Integer是什么意思
int与Integer的区别从大的方面来说就是基本数据类型与其包装类的区别:
- int 是基本类型,直接存数值;
- Integer 是对象,用一个引用指向这个对象。
数据类型分类:
Java中的数据类型分为基本数据类型和复杂数据类型:
- int 是前者,而Integer是后者(也就是一个类);因此在类进行初始化时,int类的变量初始为0,而Integer的变量则初始化为null。
初始化时:
int i = 1;
Integer i = new Integer(1); // 把Integer当做一个类看
但由于有了自动装箱和拆箱,使得对Integer类也可以使用:
Integer i = 1;
int是基本数据类型(面向过程留下的痕迹,不过是对Java的有益补充),Integer是一个类,是int的扩展,定义了很多转换方法。 类似的还有:float → Float;double → Double;boolean → Boolean等,而且还提供了处理int类型时非常有用的其他一些常量和方法。
举例说明:
当需要往ArrayList
、HashMap
中放东西时,像int、double这种内建类型是放不进去的,因为容器都是装Object的,这时就需要这些内建类型的外覆类了。Java中每种内建类型都有相应的外覆类。
Java中int和Integer的关系:
- int是基本的数据类型;
- Integer是int的封装类;
- int和Integer都可以表示某一个数值;
- int和Integer不能够互用,因为它们是两种不同的数据类型。
举例说明:
private void test(Integer iAge) {
int age = iAge;
}
test(null); // 将会导致空指针异常
并且泛型定义时也不支持int:
List<Integer> list = new ArrayList<>();
可以,而:
List<int> list = new ArrayList<>(); // 则不行
总而言之: 如果我们定义一个int类型的数,只是用来进行一些加减乘除的运算或作为参数进行传递,那么就可以直接声明为int基本数据类型。但如果要像对象一样来进行处理,那么就要用Integer来声明一个对象,因为Java是面向对象的语言,因此当声明为对象时能够提供很多对象间转换的方式与一些常用的方法。自认为Java作为一门面向对象的语言,我们在声明一个变量时最好声明为对象格式,这样更有利于你对面向对象的理解。