美文网首页
java内置类(Integer、Double、Float、Boo

java内置类(Integer、Double、Float、Boo

作者: callme周小伦 | 来源:发表于2019-10-24 15:48 被阅读0次

摘录并整理自:Java内置的包装类

1. Object

  • Object 是 Java 类库中的一个特殊类,也是所有类的父类。当一个类被定义后,如果没有指定继承的父类,那么默认父类就是 Object 类。因此,以下两个类是等价的。
    即:
    public class MyClass{…}
    等价于public class MyClass extends Object {…}
  • 由于所有类都是由Object类派生而出来的,因此Object中定义的方法,在其它类中都可以使用,常见方法有:


    image.png

1.1 equals()方法

equals() 方法的作用与"="运算符类似,''=''用于值与值的比较和值与对象的比较,而 equals() 方法用于对象与对象之间的比较
boolean result=obj.equals(Object o);

1.2 getClass()方法

getClass() 方法返回对象所属的类,是一个 Class 对象。通过 Class 对象可以获取该类的各种信息,包括类名、父类以及它所实现接口的名字等。
例如:
:

public static void main(String[] args) throws ParseException {
        String obj = new String();
        System.out.println("类:"+obj.getClass());
        //获取类名
        System.out.println("类名:"+obj.getClass().getName());
        //获取父类名
        System.out.println("父类:"+obj.getClass().getSuperclass().getName());
        System.out.println("实现的接口有:");
        //获取实现的接口并输出
        for(int i=0;i<obj.getClass().getInterfaces().length;i++)
        {
            System.out.println(obj.getClass().getInterfaces()[i]);
        }

    }
类:class java.lang.String
类名:java.lang.String
父类:java.lang.Object
实现的接口有:
interface java.io.Serializable
interface java.lang.Comparable
interface java.lang.CharSequence

2. Integer包装了基本类型的值,提供了int、string转换的方法

  • 构造方法:
public Integer(int value) {
        this.value = value;
    }
public Integer(String s) throws NumberFormatException {
        this.value = parseInt(s, 10);
    }
  • 我们发现Integer(String s)调用了parseInt()函数,某人为十进制数字
  • Integer类的常用方法


    image.png

    这里看一下valueOf()函数,有两个函数

public static Integer valueOf(String s)
public static Integer valueOf(String s, int radix)
public static Integer valueOf(int i)

我们可以分别可以通过string、int类型来获取Integer类型

2.1 同时可以通过Integer将int转换成二进制、八进制、十六进制的string形式

public static void main(String[] args) throws ParseException {
        int num=40;
        String str=Integer.toString(num);    // 将数字转换成字符串
        String str1=Integer.toBinaryString(num); // 将数字转换成二进制
        String str2=Integer.toHexString(num);    // 将数字转换成八进制
        String str3=Integer.toOctalString(num);    // 将数字转换成十六进制
        System.out.println(str+"的二进制数是:"+str1);
        System.out.println(str+"的八进制数是:"+str3);
        System.out.println(str+"的十进制数是;"+str);
        System.out.println(str+"的十六进制数是:"+str2);

    }
40的二进制数是:101000
40的八进制数是:50
40的十进制数是;40
40的十六进制数是:28

2.2 Integer常量

常用常量有:

  • MAX_VALUE:值为 231-1 的常量,它表示 int 类型能够表示的最大值。
  • MIN_VALUE:值为 -231 的常量,它表示 int 类型能够表示的最小值。
  • SIZE:用来以二进制补码形式表示 int 值的比特位数。
  • TYPE:表示基本类型 int 的 Class 实例。
public static void main(String[] args) throws ParseException {
        System.out.println(Integer.MAX_VALUE);   //获取 int 类型可取的最大值
        System.out.println(Integer.MIN_VALUE);    // 获取 int 类型可取的最小值
        System.out.println(Integer.SIZE);   // 获取 int 类型的二进制位
        Class c = Integer.TYPE;
        System.out.println(Integer.TYPE);    // 获取基本类型 int 的 Class 实例
    }
2147483647
-2147483648
32
int

3. Float类

3.1 构造函数

public Float(float value) {
        this.value = value;
    }
public Float(double value) {
        this.value = (float)value;
    }
public Float(String s) throws NumberFormatException {
        value = parseFloat(s);
    }

3.2 Float类常用方法

image.png
  • 和Integer一样,其valueOf()函数都能以float和string作为参数
public static Float valueOf(String s) throws NumberFormatException {
        return new Float(parseFloat(s));
    }
public static Float valueOf(float f) {
        return new Float(f);
    }

3.3 Float常用常量

除了和Integer同样拥有的四个常用常量外,还有一些常用常量

  • MAX_EXPONENT:有限 float 变量可能具有的最大指数。
  • MIN_EXPONENT:标准化 float 变量可能具有的最小指数。
  • MIN_NORMAL:保存 float 类型数值的最小标准值的常量,即 2-126。
  • NaN:保存 float 类型的非数字值的常量。
public static void main(String[] args) throws ParseException {
        System.out.println(Float.MAX_EXPONENT);   //获取 float 类型可取的最大值
        System.out.println(Float.MIN_EXPONENT);    //获取 float 类型可取的最小值
        System.out.println(Float.MIN_NORMAL);    //获取 float 类型可取的最小标准值
        System.out.println(Float.SIZE);    //获取 float 类型的二进制位
        System.out.println(Float.NaN);

    }
127
-126
1.17549435E-38
32
NaN

4. Double类

4.1 构造方法

public Double(double value) {
        this.value = value;
    }
public Double(String s) throws NumberFormatException {
        value = parseDouble(s);
    }

4.2 Double的常用方法

image.png

对于value()通常重载为double和string类型

public static Double valueOf(String s) throws NumberFormatException {
        return new Double(parseDouble(s));
    }
public static Double valueOf(double d) {
        return new Double(d);
    }

4.3 Double的常用常量

  • MAX_VALUE:值为 1.8E308 的常量,它表示 double 类型的最大正有限值的常量。
  • MIN_VALUE:值为 4.9E-324 的常量,它表示 double 类型数据能够保持的最小正非零值的常量。 //1.7976931348623157E308
  • NaN:保存 double 类型的非数字值的常量。
  • NEGATIVE_INFINITY:保持 double 类型的负无穷大的常量。
  • POSITIVE_INFINITY:保持 double 类型的正无穷大的常量。
  • SIZE:用秦以二进制补码形式表示 double 值的比特位数。
  • TYPE:表示基本类型 double 的 Class 实例。

5. Number类

  • Number 是一个抽象类,也是一个超类(即父类)。Number 类属于 java.lang 包,所有的包装类(如 Double、Float、Byte、Short、Integer 以及 Long)都是抽象类 Number 的子类。
  • Number 类定义了一些抽象方法,以各种不同数字格式返回对象的值。如 xxxValue() 方法,它将 Number 对象转换为 xxx 数据类型的值并返回,其中 doubleValue() 方法返回 double 类型的值,floatValue() 方法返回 float 类型的值。

6. Character类

  • Character 类是字符数据类型 char 的包装类。Character 类的对象包含类型为 char 的单个字段,这样能把基本数据类型当对象来处理

6.1 Character 的常用方法

image.png
  • 注意:后面的判断类型和转换大小写函数是public static
public static void main(String[] args) {
        System.out.println(Character.isLetter('1')); //false
        System.out.println(Character.isDigit('a')); //false
        System.out.println(Character.isLetterOrDigit('a')); //true
        System.out.println(Character.toLowerCase('A')); // a
        System.out.println(Character.toUpperCase('a'));// A
    }

7. Boolean类

7.1. 构造函数

public Boolean(boolean value) {
        this.value = value;
    }
public Boolean(String s) {
        this(parseBoolean(s));
    }

其中 boolValue 必须是 true 或 false(不区分大小写),boolString 包含字符串 true(不区分大小写)

7.2 Boolean的常用方法

image.png
  • valueOf()函数通过重载string类型和boolean类型

8. Byte类

8.1 构造函数

public Byte(byte value) {
        this.value = value;
    }
public Byte(String s) throws NumberFormatException {
        this.value = parseByte(s, 10);
    }

8.2 常用函数

image.png
public static Byte valueOf(String s) throws NumberFormatException {
        return valueOf(s, 10);
    }
public static Byte valueOf(String s, int radix)
        throws NumberFormatException {
        return valueOf(parseByte(s, radix));
    }
public static Byte valueOf(byte b) {
        final int offset = 128;
        return ByteCache.cache[(int)b + offset];
    }

8.3 常用常量

  • MIN_VALUE:byte 类可取的最小值。
  • MAX_VALUE:byte 类可取的最大值。
  • SIZE:用于以二进制补码形式表示的 byte 值的位数。
  • TYPE:表示基本类 byte 的 Class 实例。
public static void main(String[] args) {
        System.out.println(Byte.MAX_VALUE);   //获取 int 类型可取的最大值   
        System.out.println(Byte.MIN_VALUE);    // 获取 int 类型可取的最小值
        System.out.println(Byte.SIZE);   // 获取 int 类型的二进制位
        Class c = Byte.TYPE;
        System.out.println(Byte.TYPE);    // 获取基本类型 int 的 Class 实例
    }
127
-128
8
byte

9.System类

  • System 类代表系统,系统级的很多属性和控制方法都放置在该类的内部。该类位于 java. lang 包。由于该类的构造方法是 private 的,所以无法创建该类的对象,也就是无法实例化该类。
    System 类内部的成员变量和成员方法都是 static 的,所以可以方便地进行调用。

9.1 System成员变量

System 类有 3 个静态成员变量,分别是 PrintStream out、InputStream in 和 PrintStream err。

9.2 System类成员方法

  • arraycopy方法
public static void arraycopy(Object src,int srcPos,Object dest,int destPos,int length)
  • currentTimeMillis() 方法
    该方法的作用是返回当前的计算机时间,时间的格式为当前计算机时间与 GMT 时间(格林尼治时间)1970 年 1 月 1 日 0 时 0 分 0 秒所差的毫秒数,例如:
public static native long currentTimeMillis();
  • exit()方法
    该方法的作用是终止当前正在运行的 Java 虚拟机,具体的定义格式如下
public static void exit(int status)

其中,status 的值为 0 时表示正常退出,非零时表示异常退出。使用该方法可以在图形界面编程中实现程序的退出功能等。

  • gc() 方法
    该方法的作用是请求系统进行垃圾回收。至于系统是否立刻回收,取决于系统中垃圾回收算法的实现以及系统执行时的情况。定义如下:
1.  public static void gc()
  • getProperty() 方法
    该方法的作用是获得系统中属性名为 key 的属性对应的值,具体的定义如下:
public static String getProperty(String key)

常见属性信息如下:


image.png

相关文章

网友评论

      本文标题:java内置类(Integer、Double、Float、Boo

      本文链接:https://www.haomeiwen.com/subject/thorvctx.html