Java字串子序列

2019-10-16 22:23:38

Java 1.4引入了CharSequence介面,String實現了這個介面。這是為了在String類中實現subSequence()方法。在內部它呼叫substring()方法。

String subSequence()方法返回一個字元序列,該字元序列是此序列的子序列。呼叫str.subSequence(begin,end)形式的此方法的行為與呼叫str.substring(begin,end)的方式完全相同。

下面是一個簡單的Java String subSequence方法範例。


public class StringSubsequence {

    /**
     * 此類顯示String subSequence方法的用法
     * 
     * @param args
     */
    public static void main(String[] args) {
        String str = "www.tw511.com";
        System.out.println("Last 4 char String: " + str.subSequence(str.length() - 4, str.length()));
        System.out.println("First 4 char String: " + str.subSequence(0, 4));
        System.out.println("website name: " + str.subSequence(4, 14));
        // substring vs subSequence
        System.out.println("substring == subSequence ? " + (str.substring(4, 14) == str.subSequence(4, 14)));
        System.out.println("substring equals subSequence ? " + (str.substring(4, 14).equals(str.subSequence(4, 14))));
    }

}

執行上面範例程式碼,得到以下結果 -

Last 4 char String: .com
First 4 char String: www.
website name: tw511.com
substring == subSequence ? false
substring equals subSequence ? true

使用subSequence方法沒有什麼好處。理想情況下,應該始終使用String substring()方法。