Java面向物件基礎--常用基礎類
阿新 • • 發佈:2020-11-28
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
程式碼實現如下: