int 和 Integer 的区别与作用

int是JAVA八大基本数据类型(byte,shor,int,long,char,boolean,float,double)之一。 JAVA语言为八大基本数据提供了包装类,Integer对应是int类型的包装类,就是把int类型包装成Object对象。

Java有2种不同的类型:引用类型和原始类型。Int是java的原始数据类型,Integer是java的为int提供的封装类。Java为每个原始类型提供了封装类。

int 是基本数据类型 Integer 是int的一个包装类(wrapper),他是类不是基本数据类型,他的内部其实包含一个int型的数据 那为什么要用Integer呢,主要是因为面向对象的思想,因为Java语言是面向对象的,这也是它只所以流行的原因之一,对象封装有很多好处,可以把属性也就是数据跟处理这些数据的方法结合在一起,比如Integer就有parseInt()等方法来专门处理int型相关的数据,另一个非常重要的原因就是在Java中绝大部分方法或类都是用来处理类类型对象的,如ArrayList集合类就只能以类作为他的存储对象,而这时如果想把一个int型的数据存入list是不可能的,必须把它包装成类,也就是Integer才能被List所接受。所以Integer的存在是很必要的。

始数据类型 引用数据类型

boolean Boolean

char Character

byte Byte

short Short

int Integer

long Long

float Float

double Double

引用类型和原始类型的行为完全不同,并且它们具有不同的语义。引用类型和原始类型具有不同的特征和用法,它们包括:大小和速度问题,这种类型以那种类型的数据结构存储,当引用类型和原始类型用作某个类的实例时所指定的缺省值。对象引用实例变量的缺省值为null,而原始类型实例变量的缺省值与它们的类型有关。

Integer类的使用方法 1、属性。 static int MAX_VALUE:返回最大的整型数; static int MIN_VALUE:返回最小的整型数; static Class TYPE :返回当前类型。 例子代码: System.out.println("Integer.MAX_VALUE: " + Integer.MAX_VALUE ); 结果为:Integer.MAX_VALUE: 2147483647

2、构造函数。 Integer(int value) :通过一个int的类型构造对象; Integer(String s) :通过一个String的类型构造对象; 例子代码: Integer i = new Integer("1234"); 生成了一个值为1234的Integer对象。

3、方法。 说明: 1. 所有方法均为public; 2. 书写格式:[修饰符] <返回类型> <方法名([参数列表])> 如: static int parseInt(String s) 表示:此方法(parseInt)为类方法(static),返回类型为(int),方法所需参数为String类型。 1. byteValue():取得用byte类型表示的整数; 2. int compareTo(Integer anotherInteger) :比较两个整数。相等时返回0;小于时返回负数;大于时返回正数。 例子代码: Integer i = new Integer(1234); System.out.println("i.compareTo: " + i.compareTo(new Integer(123)) ); 结果为:i.compareTo: 1 3. int compareTo(Object o) :将该整数与其他类进行比较。如果o也为Integer类,进行方法2的操作;否则,抛出ClassCastException异常。 4. static Integer decode(String nm) :将字符串转换为整数。 5. double doubleValue() :取得该整数的双精度表示。 6. boolean equals(Object obj) :比较两个对象。 7. float floatValue() :取得该整数的浮点数表示。 8. static Integer getInteger(String nm) :根据指定名确定系统特征值。 9. static Integer getInteger(String nm, int val) :上面的重载。 10. static Integer getInteger(String nm, Integer val) :上面的重载。 11. int hashCode() :返回该整数类型的哈希表码。 12. int intValue() : 返回该整型数所表示的整数。 13. long longValue() :返回该整型数所表示的长整数。 14. static int parseInt(String s) :将字符串转换成整数。s必须是时进制数组成,否则抛出NumberFormatException异常。 15. static int parseInt(String s, int radix) :以radix为基数radix返回s的十进制数。所谓的基数就是“几进制”。 例子代码: 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 即s1在此例中被看成是二进制,返回十进制就是10。 16. short shortValue() :返回该整型数所表示的短整数。 17. static String toBinaryString(int i) :将整数转为二进制数的字符串。 18. static String toHexString(int i) :将整数转为十六进制数的字符串。 19. static String toOctalString(int i) :将整数转为八进制数的字符串。 20. String toString() :将该整数类型转换为字符串。 21. static String toString(int i) :将该整数类型转换为字符串。不同的是,此为类方法。 22. static String toString(int i, int radix) :将整数i以基数radix的形式转换成字符串。 例子代码: int i1 = 54321; System.out.println("Integer.toString(int i, int radix): " + Integer.toString(i1,16) ); 结果为:Integer.toString(int i, int radix): d431 23. static Integer valueOf(String s) :将字符串转换成整数类型。 24. static Integer valueOf(String s, int radix) :将字符串以基数radix的要求转换成整数类型。

来自:李晓卡 > 《java语言总结与学习》

本文分享自微信公众号 - java一日一条(mjx_java)

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2015-06-23

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏zingpLiu

Go语言的数组

在 Go 语言里,数组是一个长度固定的数据类型,用于存储一段具有相同的类型的元素的连续块。数组存储的类型可以是内置类型,如整型或者字符串,也可以是某种结构类型。

14240
来自专栏一“技”之长

Swift中构造方法的解析 原

      构造方法是一个类创建对象最先也是必须调用的方法,在Objective-C中,开发者更习惯称这类方法为初始化方法。在Objective-C中的初始化方...

10320
来自专栏Kevin-ZhangCG

排序算法总结

20030
来自专栏Albert陈凯

Scala之偏函数Partial Function

http://blog.csdn.net/bluishglc/article/details/50995939 从使用case语句构造匿名函数谈起 在Scal...

34790
来自专栏程序员互动联盟

【专业技术】关于JS的prototype

概述: 在接触JS的过程中,随着理解的深入会逐渐的理解一些比较深奥的理论或者知识,那么今天我们来介绍一下比较难理解的prototype和constructor。...

35760
来自专栏鸿的学习笔记

Scala的函数

前文已经提到Scala变量的用法,现在聊聊函数。在Scala里,函数的定义很简单。例如:

9510
来自专栏微信公众号:Java团长

Java基础11 对象引用

我们之前一直在使用“对象”这个概念,但没有探讨对象在内存中的具体存储方式。这方面的讨论将引出“对象引用”(object reference)这一重要概念。

9520
来自专栏编程

python的函数(一):基本概念

我们之前学了一些基础的过程语句,如if else、while、for。随着我们python程序的功能越来越复杂,代码也就越来越长,因此我们就需要用“函数”来简化...

20780
来自专栏landv

java基本数据类型

23540
来自专栏Python爱好者

Java基础笔记08

15650

扫码关注云+社区

领取腾讯云代金券