1. 程式人生 > 實用技巧 >Java面向物件基礎--常用基礎類

Java面向物件基礎--常用基礎類

Java常用基礎類

一、包裝類

1、包裝類的定義;
基本資料型別如int、float、double、boolean、char 等。基本資料型別是不具備物件的特性的,比如基本型別不能呼叫方法、功能簡單。為了讓基本資料型別也具備物件的特性,Java 為每個基本資料型別都提供了一個包裝類,這樣我們就可以像操作物件那樣來操作基本資料型別。
2、對應關係

二、Integer整數類


部分程式碼如下:

public class Test1 {
    public static void main(String[] args) {
        Integer num = new Integer(12);
        System.out.println(num);
        System.out.println(num.compareTo(13));//比較兩個整數,相等時返回0,小於時返回負數,大於時返回正數

        String s = "1242225";//   將字串(只有十進位制數)轉換為整數
        int b =Integer.parseInt(s);
        System.out.println("字串轉整數:"+b);
    }
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10

執行結果如下:

三、Character字元類

定義Character 類在物件中包裝一個基本型別 char 的值。Character 型別的物件包含型別為 char 的單個欄位。
此外,該類提供了幾種方法,以確定字元的類別(小寫字母,數字,等等),並將字元從大寫轉換成小寫,反之亦然。

public static void main(String[] args) {
        Character ch1 = new Character('a');
        Character ch2 = new Character('A');
        
        System.out.println("char value of ch1 : " + ch1.charValue());// ch1的char值
        System.out.println("ch1 compare to ch2 : " + ch1.compareTo(ch2));// 對比ch1和ch2的大小
        System.out.println("min value(int) : " + (int) Character.MIN_VALUE);// 表示範圍的最小值
        System.out.println("max value(int) : " + (int) Character.MAX_VALUE);// 表示範圍的最大值
        System.out.println("is digit '1' : " + Character.isDigit('1'));// 判斷一個字元是否是數字形式
        System.out.println("is upper case 'a' : " + Character.isUpperCase('a'));// 判斷一個字元是否是大寫形式
        System.out.println("is space char ' ' : " + Character.isSpaceChar(' '));// 判斷一個字元是否是空格
        System.out.println("is letter '1' :" + Character.isLetter('1'));// 判斷一個字元是否是字母
        System.out.println("is letter or digit '好' :" + Character.isLetterOrDigit('好'));// 判斷一個字元是否是字母或數字
        System.out.println("to upper case 'a' :" + Character.toUpperCase('a'));// 把字母轉化為大寫形式
    }
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15

程式碼實現如下:

四、String字串類

public static void main(String[] args) {
        byte[] b = {'a','b','c','d','e','f','g','h','i','j'};
        char[] c = {'0','1','2','3','4','5','6','7','8','9'};

        String sb = new String(b);
        String sb_sub = new String(b,3,2);
        String sc = new String(c);
        String sc_sub = new String(c,3,2);
        String sb_copy = new String(sb);

        System.out.println("sb: " + sb );
        System.out.println("sb_sub: " + sb_sub );
        System.out.println("sc: " + sc );
        System.out.println("sc_sub: " + sc_sub );
        System.out.println("sb_copy: " + sb_copy );
    }
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16

程式碼實現如下:

五、StringBuffer字串緩衝類

StringBuffer又稱為可變字元序列,它是一個類似於 String 的字串緩衝區,通過某些方法呼叫可以改變該序列的長度和內容。原來StringBuffer是個字串的緩衝區,即就是它是一個容器,容器中可以裝很多字串。並且能夠對其中的字串進行各種操作。

public static void main(String[] args) {
        String question = new String("1+1=");
        int answer=3;
        boolean result=(1+1==3);
        StringBuffer sb = new StringBuffer() ;
        sb. append (question);
        sb. append (answer);
        sb. append (result);
        sb. insert (5,',');
        
        System. out. println(sb) ;
    }
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12

程式碼實現如下:

六、Random隨機類

public static void main(String[] args) {
        Random r1 = new Random(50) ;
        System. out. println("第一個種子為50的Random物件");
        System. out. println("r1.nextBoolean():\t" + r1.nextBoolean());
        System. out. println("r1.nextInt():\t\t" + r1.nextInt());
        System. out. println("r1.nextDouble():\t" + r1.nextDouble());
        System. out. println(" r1.nextGaussian :\t" + r1. nextGaussian());
    }
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8

程式碼實現如下:

七、Date時間類

import java.text.SimpleDateFormat;
import java.util.Date;

public class Test1 {
    public static void main(String[] args) {
        //原版時間戳格式
        long time = System.currentTimeMillis();
        System.out.println(time);

        //轉變為我們能理解的格式
        SimpleDateFormat sim = new SimpleDateFormat("yyyy年MM月dd日 HH時mm分ss秒");
        Date date = new Date(System.currentTimeMillis());
        System.out.println(sim.format(date));
    }
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15

程式碼實現如下:

八、Calendar日曆類

import java.util.Calendar;

public class Test1 {
    public static void main(String[] args) {
        Calendar ca = Calendar.getInstance();
        //獲得ca所包含的年份。注意寫法
        System.out.println("year is :"+ca.get(Calendar.YEAR));

        ca.add(Calendar.YEAR,2);//為年份增加1=2
        System.out.println("year is :"+ca.get(Calendar.YEAR));

        ca.set (Calendar.YEAR,2009); //設定ca的年份
        System.out.println("year is :" +ca.get(Calendar.YEAR));

        System.out.println("day of year:"+ca.get(Calendar.DAY_OF_YEAR));//今天是今年的第幾天

        System.out.println("day of week:" +ca.get(Calendar.DAY_OF_WEEK+1));//今天是本週的第幾天
    }
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19

程式碼實現如下:

九、Math算術運算類

public class Test1 {
    public static void main(String[] args) {
        // 絕對值
        System.out. println ("abs of -1 : " + Math.abs(-1) ) ;//比這個數大的最小整數
        System.out.println("ceil of 9.01 : " + Math.ceil(9.01)) ;//比這個數小的最大整數
        System.out. println("floor of 9.99 :"+ Math.floor(9.99));//取較大者
        System.out. println("the max is : "+Math.max(101,276.001)) ;
        //隨機數,區間為[0.0,1.0)
        System.out.println ("random number : " +Math.random()) ;//四捨五入
        System.out. println ("round value of 9.49 : "+Math.round(9.49)) ;
        //返回正確舍入的 double值的正平方根
        System.out.println("square root of 225 : "+Math.sqrt(225));
    }
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14

程式碼實現如下: