JAVA lang包介紹


JAVA常用的包名稱和功能如下
java.lang包 - 該包是Java語言的核心包,並且該包中的所有內容由Java虛擬機自動導入。 如:System類、String類、...

 java.util包 - 該包是Java語言的工具包,里面提供了大量工具類以及集合類等。 如:Scanner類、Random類、List集合、...

java.io包 - 該包是Java語言中的輸入輸出包,里面提供了大量讀寫文件相關的類等。 如:FileInputStream類、FileOutputStream類、...

java.net包 - 該包是Java語言中的網絡包,里面提供了大量網絡編程相關的類等。 如:ServerSocket類、Socket類、...
java.sql 包 - 該包是Java語言中的數據包,里面提供了大量操作數據庫的類和接口等。 如:DriverManager類、Connection接口、...

object

特點:
java.lang.Object類是Java語言中類層次結構的根類,也就是說任何一個類都是該類的直接或者間 接子類。
如果定義一個Java類時沒有使用extends關鍵字聲明其父類,則其父類為 java.lang.Object 類。
Object類定義了“對象”的基本行為, 被子類默認繼承。

常用方法: 

 

 

 code

import java.util.Objects;

public class Student extends Object {
    private int id; // 用於描述學號的成員變量
    private String name; // 用於描述姓名的成員變量

    public Student() {
    }

    public Student(int id, String name) {
        setId(id);
        setName(name);
    }

    public int getId() {
        return id;
    }

    public void setId(int id) {
        if (id > 0) {
            this.id = id;
        } else {
            System.out.println("學號不合理哦!!!");
        }
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    @Override
    public boolean equals(Object obj) {
        if(this == obj) return  true;
        if(null==obj) return  false;
        if(obj instanceof Student){
            Student st=(Student) obj;
            System.out.println(st.id);
            System.out.println(id);
            return  st.getId()==this.getId();
        }
        return false;
    }


    @Override
    public int hashCode() {
        return getId(); // 不再代表內存地址的編號了
//        final int type = 12;
//        return type*31 + getName().hashCode();
    }

    @Override
    public String toString() {
        return "Student[id = " + getId() + ", name = " + getName() + "]";
    }


    public static  void  main(String[] args){
        Student s1=new Student(102,"zhangsan");
        Student s2=new Student(101,"zhangsan");
        System.out.println("s1 地址為: " + s1.id);
        System.out.println("s2 地址為: " + s2.id);
        System.out.println(s1 == s2);
        System.out.println(s1.equals(s2));
        System.out.println("---------------------------");
        Student s3=s1;
        System.out.println(s1.equals(s3));
        System.out.println("---------------------------");
        int hs = s1.hashCode();
        System.out.println("s1 的hascode:"+hs);
        String sto=s1.toString();
        System.out.println("s1 to string is "+sto);

    }
}

 包裝類

基本數據類型不是對象,為了使基本類型也是對象,Java提供對基本數據類型進行對象化的類,稱作包裝類。

 

在Java5發布之前使用包裝類對象進行運算時,需要較為繁瑣的“拆箱”和“裝箱”操作;即運算前先將 包裝類對象拆分為基本類型數據,運算后再將結果封裝成包裝類對象。

從Java5開始增加了自動拆箱和自動裝箱的功能。

 

Integer

常量有:

public class IntegerTest {

    public static void main(String[] args) {

        // 1.打印Integer類中常用的常量數值
        System.out.println("最大值是:" + Integer.MAX_VALUE); // 2^31-1
        System.out.println("最小值是:" + Integer.MIN_VALUE); // -2^31
        System.out.println("所表示二進制的位數是:" + Integer.SIZE); // 32
        System.out.println("所占字節的個數是:" + Integer.BYTES); // 4
        System.out.println("對應int類型的Class實例是:" + Integer.TYPE); // int
    }
}

 常用方法

code

public class IntegerTest {

    public static void main(String[] args) {
        // 使用構造方法來構造Integer類型的對象並打印
        //Integer it1 = new Integer(123);
        //System.out.println("it1 = " + it1); // 自動調用toString方法   123
        //Integer it2 = new Integer("456");
        //System.out.println("it2 = " + it2); // 456
        // 上述方法已過時,建議使用valueOf方法取代之,相當於從int類型到Integer類型的轉換,叫做裝箱
        Integer it3 = Integer.valueOf(123);
        System.out.println("it3 = " + it3); // 123
        // 相當於從String類型到Integer類型的轉換
        Integer it4 = Integer.valueOf("456");
        System.out.println("it4 = " + it4); // 456   自動調用toString方法得到的是String類型
        // 獲取調用對象中的整數數值,相當於從Integer類型到int類型的轉換,叫做拆箱
        int ia = it4.intValue();
        System.out.println("獲取到的整數數據是:" + ia); // 456  得到的是int類型

        System.out.println("------------------------------------------------------");
        // 3.從Java5開始增加了自動裝箱和自動拆箱的機制
        Integer it5 = 100;  // 直接通過賦值運算符實現自動裝箱
        int ib = it5;       // 直接通過賦值運算符實現自動拆箱

        System.out.println("------------------------------------------------------");
        // 裝箱和拆箱的易錯點,裝箱類似調用valueof(),拆箱類似調用intValue()
        Integer it6 = 127; //128;
        Integer it7 = 127; //128;
        Integer it8 = new Integer(127); //new Integer(128);
        Integer it9 = new Integer(127); //new Integer(128);
        System.out.println(it6 == it7);      // 比較地址  false  true當數值為128時需要創建新的對象,地址也就不一樣了
        System.out.println(it6.equals(it7)); // 比較內容  true
        System.out.println(it8 == it9);      // 比較地址  false
        System.out.println(it8.equals(it9)); // 比較內容  true

        System.out.println("------------------------------------------------------");
        // 5.實現靜態方法的調用
        int ic = Integer.parseInt("200");
        //int ic = Integer.parseInt("200a"); // 編譯ok,運行發生NumberFormatException數字格式異常,因為有字母
        System.out.println("字符串轉換為整數的結果是:" + ic); // 200
        System.out.println("根據參數指定的整數獲取對應的十進制字符串是:" + Integer.toString(200));
        System.out.println("根據參數指定的整數獲取對應的二進制字符串是:" + Integer.toBinaryString(200));
        System.out.println("根據參數指定的整數獲取對應的十六進制字符串是:" + Integer.toHexString(200));
        System.out.println("根據參數指定的整數獲取對應的八進制字符串是:" + Integer.toOctalString(200));
    }
}
Double

 常用的常量類型

public class DoubleTest {

    public static void main(String[] args) {
        System.out.println("doubule 二進制字節數:"+Double.BYTES);
        System.out.println("double 二進制位數:"+Double.SIZE);
        System.out.println("double 類型:"+Double.TYPE);
    }
}

常用方法

 

 

public class DoubleTest {

    public static void main(String[] args) {
        // 1.在Java5之前裝箱和拆箱的實現
        // 實現了從double類型到Double類型的轉換,裝箱
        Double db1 = Double.valueOf(3.14);
        System.out.println("db1 = " + db1); // 3.14
        // 實現了從Double類型到double類型的轉換,拆箱
        double d1 = db1.doubleValue();
        System.out.println("d1 = " + d1); // 3.14

        System.out.println("---------------------------------------------");
        // 2.從Java5開始實現自動裝箱和自動拆箱
        Double db2 = 3.14;
        double d2 = db2;

        System.out.println("---------------------------------------------");
        // 3.實現靜態方法和成員方法的調用
        double d3 = Double.parseDouble("13.14");
        System.out.println("d3 = " + d3); // 13.14

        System.out.println("db2對象的判斷結果是:" + db2.isNaN()); // false 不是非數字
        Double db3 = Double.valueOf(0/0.0);
        System.out.println("db2對象的判斷結果是:" + db3.isNaN()); // true  是非數字


    }
}

Boolean

常用常量

 

 常用方法

 code

public class BooleanTest {

    public static void main(String[] args) {

        // 1.在Java5之前采用方法進行裝箱和拆箱
        // 相當於從boolean類型到Boolean類型的轉換,裝箱
        Boolean bo1 = Boolean.valueOf(true);
        System.out.println("bo1 = " + bo1); // true
        boolean b1 = bo1.booleanValue();
        System.out.println("b1 = " + b1); // true

        System.out.println("----------------------------------------------");
        // 2.從Java5開始支持自動裝箱和拆箱
        Boolean bo2 = false;
        boolean b2 = bo2;
        System.out.println("b2 = " + b2); // false

        System.out.println("----------------------------------------------");
        // 3.實現從String類型到boolean類型的轉換
//        boolean b3 = Boolean.parseBoolean("112");
        // 該方法的執行原理是:只要參數數值不為true或者TRUE時,則結果就是false,查手冊和源碼
        boolean b4 = Boolean.parseBoolean("TRUE");
        System.out.println("b3 = " + b4); // true
    }
}
Character

常用常量

常用方法

 

 code

public class CharacterTest {

    public static void main(String[] args) {

        // 1.在Java5之前調用方法實現裝箱和拆箱機制
        // 相當於從char類型到Character類型的轉換,裝箱
        Character ca1 = Character.valueOf('a');
        System.out.println("ca1 = " + ca1); // a
        // 從Character類型向char類型的轉換,拆箱
        char c1 = ca1.charValue();
        System.out.println("c1 = " + c1); // a

        System.out.println("----------------------------------------");
        // 2.從Java5開始支持自動裝箱和拆箱
        Character ca2 = 'b';
        char c2 = ca2;
        System.out.println("c2 = " + c2); // b

        System.out.println("----------------------------------------");
        // 3.實現字符類型的判斷以及轉換
        System.out.println(Character.isUpperCase(c2)); // 判斷是否為大寫字母  false
        System.out.println(Character.isLowerCase(c2)); // 判斷是否為小寫字母  true
        System.out.println(Character.isDigit(c2));     // 判斷是否為數字字符  false
        System.out.println("轉換為大寫字符是:" + Character.toUpperCase(c2)); // B
        System.out.println("轉換為小寫字符是:" + Character.toLowerCase(c2)); // b
    }
}
數學處理類

 Math類

常用方法

public class MathTest {

    public static void main(String[] args) {
        

        System.out.println("獲取兩個整數中最大值的結果是:" + Math.max(10, 20)); // 20
        System.out.println("獲取兩個整數中最小值的結果是:" + Math.min(10, 20)); // 10
        System.out.println("獲取次方的結果是:" + Math.pow(2, 3)); // 8.0  體現double類型
        System.out.println("獲取絕對值的結果是:" + Math.abs(-5)); // 5
        System.out.println("進行四舍五入的結果是:" + Math.round(3.14)); // 3
        System.out.println("該整數的平方根是:" + Math.sqrt(16)); // 4.0
        System.out.println("生成的隨機數是:" + Math.random()); // 隨機數
    }
}
BigDecimal類

 常用方法

public class BigDecimalTest {

    public static void main(String[] args) {

        // 1.構造BigDecimal類型的兩個對象
        BigDecimal bd1 = new BigDecimal("5.2");
        BigDecimal bd2 = new BigDecimal("1.3");
        // 2.使用構造完畢的對象實現加減乘除運算
        System.out.println("實現加法運算的結果是:" + bd1.add(bd2)); // 6.5
        System.out.println("實現減法運算的結果是:" + bd1.subtract(bd2)); // 3.9
        System.out.println("實現乘法運算的結果是:" + bd1.multiply(bd2)); // 6.76
        System.out.println("實現除法運算的結果是:" + bd1.divide(bd2)); // 4

        System.out.println("---------------------------------------------------------------");
        // 3.實現精確運算
        System.out.println(0.1 + 0.2); // 0.30000000000000004
        BigDecimal bd3 = new BigDecimal("0.1");
        BigDecimal bd4 = new BigDecimal("0.2");
        System.out.println("精確計算的結果是:" + bd3.add(bd4)); // 0.3

        System.out.println("---------------------------------------------------------------");
        // 4.注意事項
        BigDecimal bd5 = new BigDecimal("2");
        BigDecimal bd6 = new BigDecimal("0.3");
        System.out.println("除法運算的結果是:" + bd5.divide(bd6, RoundingMode.HALF_UP)); // 7
    }
}
BigInteger類常用方法

 

public class BigIntegerTest {

    public static void main(String[] args) {

        // 1.構造兩個BigInteger類型的對象並指定初始值
        BigInteger bi1 = new BigInteger("20");
        BigInteger bi2 = new BigInteger("8");
        // 2.實現加減乘除取余操作並打印
        System.out.println("實現加法運算的結果是:" + bi1.add(bi2)); // 28
        System.out.println("實現減法運算的結果是:" + bi1.subtract(bi2)); // 12
        System.out.println("實現乘法運算的結果是:" + bi1.multiply(bi2)); // 160
        System.out.println("實現除法運算的結果是:" + bi1.divide(bi2)); // 2
        System.out.println("實現取余運算的結果是:" + bi1.remainder(bi2)); // 4

        System.out.println("-----------------------------------------------------");
        // 3.一次性得到商和余數
        BigInteger[] arr = bi1.divideAndRemainder(bi2);
        for (int i = 0; i < arr.length; i++) {
            System.out.println("下標為" + i + "的元素是:" + arr[i]); // 2 4
        }
    }
}

 

 

 

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM