1. 程式人生 > 其它 >學習總結7

學習總結7

(1)今日安排

字串分割

以下例項使用了 split(string) 方法通過指定分隔符將字串分割為陣列:

public class JavaStringSplitEmp {
   public static void main(String args[]){
      
      String str = "www-runoob-com";
      String[] temp;
      String delimeter = "-";  // 指定分割字元
      temp = str.split(delimeter); // 分割字串
      // 普通 for 迴圈
      for
(int i =0; i < temp.length ; i++){ System.out.println(temp[i]); System.out.println(""); } System.out.println("------java for each迴圈輸出的方法-----"); String str1 = "www.runoob.com"; String[] temp1; String delimeter1 = "\\."; // 指定分割字元, . 號需要轉義 temp1 = str1.split(delimeter1); //
分割字串 for(String x : temp1){ System.out.println(x); System.out.println(""); } } }
public class JavaStringSplitEmp {
   public static void main(String args[]){
      
      String str = "www-runoob-com";
      String[] temp;
      String delimeter = "-";  // 指定分割字元
      temp = str.split(delimeter); //
分割字串 // 普通 for 迴圈 for(int i =0; i < temp.length ; i++){ System.out.println(temp[i]); System.out.println(""); } System.out.println("------java for each迴圈輸出的方法-----"); String str1 = "www.runoob.com"; String[] temp1; String delimeter1 = "\\."; // 指定分割字元, . 號需要轉義 temp1 = str1.split(delimeter1); // 分割字串 for(String x : temp1){ System.out.println(x); System.out.println(""); } } }

在本例子中用到 String 類的 split 方法,其實在字串分割時可以呼叫 StringTokenizer,例項化一個 StringTokenizer 的物件,通過 hasMoreTokens() 與 nextToken()進行判斷並列印分割後的子字串。具體程式碼如下:

import java.util.*;
import java.lang.*;

public class Main {
   
    public static void main(String args[]) {
        String str="www.runoob.com"; 
        // 例項化物件,並指向以 . 對 str 進行分割
        StringTokenizer str2=new StringTokenizer(str, ".");
        // 對 str2 遍歷並列印子字串; 
        while(str2.hasMoreTokens()){ 
            System.out.println(str2.nextToken()); 
        }
    }
}

split() 方法在分割字串後,會從字串陣列的末端開始進行元素是否為空判斷,如果為空,則陣列長度 -1,一直判斷到一個非空的元素後停止,而這個非空元素之前的空的 字串 "" 會依舊保留。

package zifuchuan;

import java.util.*;
import java.lang.*;

public class Main {
   
    public static void main(String[] args) {
        String s1 = "123-123.2-1--";
        String[] ss1 =  s1.split("-");
        System.out.println(ss1.length);//3
        System.out.println(Arrays.toString(ss1));//[123, 123.2, 1]
        String s2 = "123--123.2-1--";
        String[] ss2 =  s2.split("-");
        System.out.println(ss2.length);//4
        System.out.println(Arrays.toString(ss2));//[123, , 123.2, 1]
    }
}