1. 程式人生 > >java中實用類(二)

java中實用類(二)

一、String類

1.在java中String類比較特殊,它是一種引用資料型別,位於java.lang包中。

2.String類的常用方法

(1)length()方法,是求字串的長度

String str="abcdefg";

int s=str.length();

//注意,length()方法返回值是int型別,獲得字串的長度

(2)equals()方法,是比較兩個字串的值是否相同。返回值是boolean 值,true或者false。==判斷的是記憶體地址。

注意:在java中,String類的 == 雙等於表示判斷記憶體地址是否相等,equals()判斷內容是否相同,也就是判斷裡面的值是否相同,它是一個字元一個字元去比較的。String類

特殊是因為它已經重寫了equals()方法非String類的類型別 ==  雙等於比較是記憶體地址,equals()比較的還是記憶體地址。如果要比較裡面的值是否一樣,那麼就需要去重寫equals()方法!!!

(3)equalsIgnoreCase()方法,可以忽略大小寫比較字串。

String str1="TOM";

String str2="tom";

System.out.println(str1.equalsIgnoreCase("tom"));

//忽略大小寫比較兩個字串

(4)toLowerCase():轉換字串為小寫。toUpperCase():轉換字串為大寫。

String s1="aaa";

String s2="AAA";

System.out.println(s1.toUpperCase(s2));

//將s1字串常量值轉換成大寫,然後和s2進行比較,返回true.

(5)字串的連線:如  “+” 或者 字串.concat();

String s1="你好!";

String s2=s1+"java";

或者:

String s3=s1.concat("java");

//這兩種連線字串的效果是一樣的。

(6)字串的查詢和提取

方法 說明
pubic  int  index(int  ch) 返回第一個出現字元ch的位置,位置從0開始,找不到返回-1
public int index  (String value) 返回第一個出現字串ch的位置,位置從0開始,找不到返回-1
public  int  lastIndexOf(int ch) 返回最後一個出現字元的位置,找不到返回-1
public  int  lastIndexOf(String ch) 返回最後一個出現字串的位置,找不到返回-1
public  String substring(int index) 提取從指定位置開始的部分字串,從索引位置開始,包含起始位置
public String substring(int a,int b) 提取a和b之間的字串,從a索引位置開始,到結束位置-1
public  String trim() 去字串的前後空格

(6)字串拆分  split()方法。

String  s4= "This is my dog";
String s[]=new String[s4.length()];        //定義陣列去接收
s=s4.split(" ");            //拆分字串
for (int i = 0; i < s.length; i++) {
	System.out.println(s[i]);    //輸出拆分後的字串
}

二、StringBuffer類和StringBuilder類

1.StringBuffer類屬於執行緒安全的,它可以儲存,連線操作字串,使用效率比String類更加高效

位於java.uti包中,是String類的增強類。

StringBuffer sf=new StringBuffer("我愛程式設計");        //建立StringBuffer物件

//1.toString()方法,

String s1=sf.toString();            //將StringBuffer轉換成String類


//2.append()方法,追加字串

String  s2=sf.append("java").toString;        //在sf物件後面之間追加字串,它改變的是本身的值


//3.insert()方法,插入字串

String s3=sf.insert(2, ",").toString();        //返回值2是位置,後面的是要插入的引數,型別不限!

2.StringBuilder類

它位於java.lang.StringBuilder,是JDK5.0新增的類。它是執行緒不安全,它比StringBuffer類執行要快。

3.String 類 和StringBuffer類,StringBuilder類對比

  • String:是字串常量,是不可變的物件,每次改變的是生成的String物件,然後指向的副本。操作字串效率低

  • StringBuffer:字串變數。它是可變的字串,操作時改變的是本身,效率高,推薦使用。

  • StringBuilder:字串變數。他和StringBuilder類等價。區別是StringBufrer是執行緒安全,而StringBuilder是執行緒不安全的。

三、日期操作類

1.Data類

Data類物件用來表示日期和時間。一般用其子類SimpleDateFormat

public class Test {
	public static void main(String[] args) {
		Date date=new Date();			//例項化時間類
		//獲取當前系統時間,使用SimpleDateFormat類格式化時間
		SimpleDateFormat format=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
		String time=format.format(date);        //返回值是String型別
		System.out.println("當前時間為:"+time);
	}
}

2.Calendar類

Calendar類也是用來操作日期和時間的類,它可以看作是Date類的增強類。因為本身是抽象類,可以通過getInstance()獲得Calender類的物件

四、Random類

Random類用來生成隨機數。

Random rand=new Random ();

public class Test {
	public static void main(String[] args) {
		Scanner input=new Scanner(System.in);
		//建立一個Random物件
		Random rand=new Random();
	        //產生隨機數是0~9之間
		int num=rand.nextInt(10);		    
		System.out.println("隨機數是:"+num);
	}
}