JAVA的包装类 【转】

转载 2015年11月19日 10:21:34
  Java语言是一个面向对象的语言,但是Java中的基本数据类型却是不面向对象的,这在实际使用时存在很多的不便,为了解决这个不足,在设计类时为每个基本数据类型设计了一个对应的类进行代表,这样八个和基本数据类型对应的类统称为包装类(Wrapper Class),有些地方也翻译为外覆类数据类型类

         包装类均位于java.lang包,包装类和基本数据类型的对应关系如下表所示:

包装类对应表

基本数据类型

包装类

byte

Byte

boolean

Boolean

short

Short

char

Character

int

Integer

long

Long

float

Float

double

Double

         在这八个类名中,除了IntegerCharacter类以后,其它六个类的类名和基本数据类型一直,只是类名的第一个字母大写即可。

         对于包装类说,这些类的用途主要包含两种:

                   a、作为和基本数据类型对应的类类型存在,方便涉及到对象的操作。

                   b、包含每种基本数据类型的相关属性如最大值、最小值等,以及相关的操作方法。

         由于八个包装类的使用比较类似,下面以最常用的Integer类为例子介绍包装类的实际使用。

         1、实现intInteger类之间的转换

在实际转换时,使用Integer类的构造方法和Integer类内部的intValue方法实现这些类型之间的相互转换,实现的代码如下:

                   int n = 10;

                   Integer in = new Integer(100);

                   //int类型转换为Integer类型

                   Integer in1 = new Integer(n);

                   //Integer类型的对象转换为int类型

                   int m = in.intValue();

         2Integer类内部的常用方法

                  Integer类内部包含了一些和int操作有关的方法,下面介绍一些比较常用的方法:

                   aparseInt方法

                            public static int parseInt(String s)

该方法的作用是将数字字符串转换为int数值。在以后的界面编程中,将字符串转换为对应的int数字是一种比较常见的操作。使用示例如下:

                                     String s = “123”;

                                     int n = Integer.parseInt(s);

int变量n的值是123,该方法实际上实现了字符串和int之间的转换,如果字符串都包含的不是都是数字字符,则程序执行将出现异常。(说明:异常的概念将在下一章进行讲述)

另外一个parseInt方法:

         public static int parseInt(String s, int radix)

则实现将字符串按照参数radix指定的进制转换为int,使用示例如下:

         //将字符串”120”按照十进制转换为int,则结果为120

         int n = Integer.parseInt(“120”,10);

         //将字符串”12”按照十六进制转换为int,则结果为18

         int n = Integer.parseInt(“12”,16);

         //将字符串”ff”按照十六进制转换为int,则结果为255

         int n = Integer.parseInt(“ff”,16);

这样可以实现更灵活的转换。

                   btoString方法

                            public static String toString(int i)

                            该方法的作用是将int类型转换为对应的String类型。

                            使用示例代码如下:

                                     int m = 1000;

                                     String s = Integer.toString(m);

                            则字符串s的值是”1000”

                            另外一个toString方法则实现将int值转换为特定进制的字符串:

                                     public static int parseInt(String s, int radix)

                            使用示例代码如下:

                                     int m = 20;

                                     String s = Integer.toString(m);

                            则字符串s的值是”14”

         其实,JDK自从1.5(5.0)版本以后,就引入了自动拆装箱的语法,也就是在进行基本数据类型和对应的包装类转换时,系统将自动进行,这将大大方便程序员的代码书写。使用示例代码如下:

                   //int类型会自动转换为Integer类型

                   int m = 12;

                   Integer in = m;

                   //Integer类型会自动转换为int类型

                   int n = in;

         所以在实际使用时的类型转换将变得很简单,系统将自动实现对应的转换。

java 包装类及类型转换

java基本类型和包装器类   java是一种面向对象语言,java中的类把方法与数据连接在一起,并构成了自包含式的处理单元.但在java中不能定义基本类型(primitive type),为了...
  • u014401141
  • u014401141
  • 2016年09月23日 11:12
  • 1245

Java 中基本类型和包装类之间的转换

基本类型和包装类型之间经常需要相互转换,以Integer为例(其他的类型操作雷同) Integer a = new Interger(3); //定义Interger包装类对象,值为3 int b...
  • u013599426
  • u013599426
  • 2016年06月21日 21:31
  • 2342

java里面泛型会将基本类型转为包装类

昨天我利用反射写一个通用的接口性能测试,期间遇到了一个奇怪的问题,先贴代码。 单元测试类:OilPerformanceTestpublic class OilPerformanceTest { ...
  • ww694303720
  • ww694303720
  • 2015年04月17日 10:29
  • 631

JAVA之包装类Byte详解

1.构造方法: ①Byte(byte value):以byte变量作为参数,创建Byte对象。 byte x = 23; Byte b = new Byte(x); ②Byte(String ...
  • m631521383
  • m631521383
  • 2013年08月08日 09:59
  • 2331

Java基本数据类型、包装类与String类之间的转换

一、基本数据类型与包装类之间的转换: import org.junit.Test; public class MainTest { /** * 基本数据类型与包装类之间的转换 ...
  • u013453970
  • u013453970
  • 2015年08月11日 09:06
  • 3521

java 基本类型、包装类、字符串之间的转换

1、基本类型和包装类 基本类型和包装类可通过自动装箱和拆箱实现。 int i = 24; Integer a = new Integer(i); //手动装箱 Integer b = i; ...
  • kobexiaol
  • kobexiaol
  • 2016年10月22日 13:02
  • 1060

JAVA学习笔记(十七)- Object类和包装类

Object类/* * Object类是所有类的根,默认自定义类都继承自此类 */ public class Test08 { public static void main(String...
  • wangzi11322
  • wangzi11322
  • 2015年03月25日 10:56
  • 1344

Java基础-泛型和包装类的语法糖

Java的泛型,本质是一种糖衣语法
  • wojiushiwo945you
  • wojiushiwo945you
  • 2014年09月11日 22:20
  • 946

java中基本数据类型的包装类以及基本数据类型之间的转换

字符串与其他数据类型之间的转换
  • ITofwanyifei
  • ITofwanyifei
  • 2014年08月14日 21:27
  • 1981

Java SE-基本数据类型对应包装类

包装类 Java是面向对象的编程语言,包装类的出现更好的体现这一思想。 其次,包装类作为类是有属性有方法的,功能比基本数据类型要强大。 基本数据类型 对应的包装类 byte Byte...
  • Miao_Mu_
  • Miao_Mu_
  • 2016年06月30日 21:45
  • 2682
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:JAVA的包装类 【转】
举报原因:
原因补充:

(最多只允许输入30个字)