首页 > 代码库 > Java之数字处理类浅析

Java之数字处理类浅析

包装类:

数据类型相对的包装类:
byte---Byte
short---Short
int---Integer
long---Long

float---Float
double---Double

boolean---Boolean

char---Character

为什么要有包装类型?

包装类把基本类型数据转换为对象 :是因为Java是一个面向对象的语言,基本类型并不具有对象的性质,为了与其他对象“接轨”就出现了包装类型(如我们在使用集合类型Collection时就一定要使用包装类型而非基本类型),它相当于将基本类型“包装起来”,使得它具有了对象的性质,并且为其添加了属性和方法,丰富了基本类型的操作。

包装类的作用1.提供了一系列实用的方法

       2.集合不允许存放基本数据类型数据,存放数字时,要用包装类型

技术分享

Integer类为例子介绍包装类的实际使用:

  1、实现int和Integer类之间的转换

                   //在实际转换时,使用Integer类的构造方法和Integer类内部的intValue方法实现这些类型之间的相互转换,实现的代码如下:
                   int n = 10;
                   Integer in = new Integer(100);
                   //将int类型转换为Integer类型
                   Integer in1 = new Integer(n);
                   //将Integer类型的对象转换为int类型
                   int m = in.intValue();    

 2.Integer类内部的常用方法

parseInt方法:将数字字符串转换为int数值。

String s = “123”;
int n = Integer.parseInt(s);

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);

toString方法:将int类型转换为对应的String类型

 int m = 1000;
 String s = Integer.toString(m);
// 则字符串s的值是”1000”。

public static int parseInt(String s, int radix):将int值转换为特定进制的字符串

        int m = 20;
        String s = Integer.toString(m,2);
        System.out.println(s);
        //将20z转换为二进制的结果是10100    

JDK自从1.5(版本以后,就引入了自动拆装箱的语法,也就是在进行基本数据类型和对应的包装类转换时,系统将自动进行。

        int m = 12;
        Integer in = m;
        //Integer类型会自动转换为int类型
        int n = in;

 

            //数字处理类
            //每种数据类型的最大最小值
            System.out.println(Integer.MIN_VALUE);
            System.out.println(Integer.MAX_VALUE);
            System.out.println(Byte.MIN_VALUE);
            System.out.println(Byte.MAX_VALUE);
            System.out.println(Long.MIN_VALUE);
            System.out.println(Long.MAX_VALUE);
            System.out.println(Short.MIN_VALUE);
            System.out.println(Short.MAX_VALUE);

            System.out.println(Float.MIN_VALUE);
            System.out.println(Float.MAX_VALUE);
            System.out.println(Double.MIN_VALUE);
            System.out.println(Double.MAX_VALUE);

技术分享

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

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

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

包装类型与基本类型异同

1.声明方式不同,基本类型不适用new关键字,而包装类型需要使用new关键字来在堆中分配存储空间;

2.存储方式及位置不同,基本类型是直接将变量值存储在堆栈中,而包装类型是将对象放在堆中,然后通过引用来使用;

3.初始值不同,基本类型的初始值如int为0,boolean为false,而包装类型的初始值为null

4.使用方式不同,基本类型直接赋值直接使用就好,而包装类型在集合如Collection、Map时会使用到

其他:

声明一个数组:

int ints[] = new int[3];

new代表在内存中新开辟一块区域

Java之数字处理类浅析