首页 > 代码库 > Java基础(四):Java Number & Math 类、Character 类、String 类

Java基础(四):Java Number & Math 类、Character 类、String 类

一、Java Number & Math 类:

1、Number类:

  一般地,当需要使用数字的时候,我们通常使用内置数据类型,如:byte、int、long、double 等。然而,在实际开发过程中,我们经常会遇到需要使用对象,而不是内置数据类型的情形。为了解决这个问题,Java 语言为每一个内置数据类型提供了对应的包装类。所有的包装类(Integer、Long、Byte、Double、Float、Short)都是抽象类 Number 的子类。

  这种由编译器特别支持的包装称为装箱,所以当内置数据类型被当作对象使用的时候,编译器会把内置类型装箱为包装类。相似的,编译器也可以把一个对象拆箱为内置类型。Number 类属于 java.lang 包。

  Integer x = 5;  当 x 被赋为整型值时,由于x是一个对象,所以编译器要对x进行装箱。

  x = x + 10;  然后,为了使x能进行加运算,所以要对x进行拆箱。

  java中的自动装箱与拆箱:

/**
* java中的自动装箱与拆箱
* 简单一点说,装箱就是自动将基本数据类型转换为包装器类型;拆箱就是自动将包装器类型转换为基本数据类型*/
public class Number {
    public static void main(String[] args) {
        /**
        Integer i1 = 128;  // 装箱,相当于 Integer.valueOf(128);
        int t = i1; //相当于 i1.intValue() 拆箱
        System.out.println(t);
        */
        /**
        对于–128到127(默认是127)之间的值,被装箱后,会被放在内存里进行重用
        但是如果超出了这个值,系统会重新new 一个对象
        */
        Integer i1 = 200;
        Integer i2 = 200;
        /**
        注意 == 与 equals的区别
        == 它比较的是对象的地址
       equlas 比较的是对象的内容
        */
        if(i1==i2) {
            System.out.println("true");
        } else {
            System.out.println("false");
        }
    }
}

2、Math类:

  Java 的 Math 包含了用于执行基本数学运算的属性和方法,如初等指数、对数、平方根和三角函数。Math 的方法都被定义为 static 形式,通过 Math 类可以在主函数中直接调用。

3、Number & Math 类方法:

  xxxValue():将 Number 对象转换为 xxx 数据类型的值并返回。比如:floatValue():以 float 形式返回指定的数值

  compareTo():将number对象与参数比较

  equals():判断number对象是否与参数相等

  valueOf():返回一个 Number 对象指定的内置数据类型

  toString():以字符串形式返回值

  parseInt():将字符串解析为int类型

  abs():返回参数的绝对值

  ceil()/floor():对整形变量向左/右取整,返回类型为double型

  rint()/round():返回与参数最接近的整数,返回类型为double/返回一个最接近的int、long型值

  min()/max():返回两个参数中的最小值/最大值

  exp()/log():返回自然数底数e的参数次方/返回参数的自然数底数的对数值

  pow()/sqrt():返回第一个参数的第二个参数次方/求参数的平方根

  sin()/cos()/tan()/asin()/acos()/atan():求指定double类型参数的正弦值/余弦值/正切值

  toDegrees()/toRadians():返回角度/弧度

  random():返回随机数

、Character 类:

 

  Character 类用于对单个字符进行操作,Character 类在对象中包装一个基本类型 char 的值:

 

 

char ch = a;
// Unicode 字符表示形式
char uniChar = \u039A; 
// 字符数组
char[] charArray ={ a, b, c, d, e };

 

  为内置数据类型char提供了包装类Character类。Character类提供了一系列方法来操纵字符。你可以使用Character的构造方法创建一个Character类对象,例如:Character ch = new Character(a);

  在某些情况下,Java编译器会自动创建一个Character对象。例如,将一个char类型的参数传递给需要一个Character类型参数的方法时,那么编译器会自动地将char类型参数转换为Character对象。 这种特征称为装箱,反过来称为拆箱。

// 原始字符 ‘a‘ 装箱到 Character 对象 ch 中
Character ch = a;
// 原始字符 ‘x‘ 用 test 方法装箱,然后返回拆箱的值到 ‘c‘
char c = test(x);

  Character类的方法:

  isLetter():是否是一个字母

  isDigits():是否是一个数字字符

 

  isWhiteSpace():是否是空格

  toString():返回字符的字符串形式,字符串的长度仅为1

三、String 类:

 

Java基础(四):Java Number & Math 类、Character 类、String 类