一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務(wù)器之家:專注于服務(wù)器技術(shù)及軟件下載分享
分類導(dǎo)航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術(shù)|正則表達(dá)式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務(wù)器之家 - 編程語言 - Java教程 - Java 分割字符串詳解及實例代碼

Java 分割字符串詳解及實例代碼

2020-07-18 13:53JAVA之家 Java教程

這篇文章主要介紹了 Java 分割字符串詳解及實例代碼的相關(guān)資料,需要的朋友可以參考下

 Java 分割字符串

java.lang.String 的 split() 方法, JDK 1.4 or later

public String[] split(String regex,int limit)

示例代碼

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
public class StringSplit {
  public static void main(String[] args) {
    String sourceStr = "1,2,3,4,5";
    String[] sourceStrArray = sourceStr.split(",");
    for (int i = 0; i < sourceStrArray.length; i++) {
      System.out.println(sourceStrArray[i]);
    }
 
    // 最多分割出3個字符串
    int maxSplit = 3;
    sourceStrArray = sourceStr.split(",", maxSplit);
    for (int i = 0; i < sourceStrArray.length; i++) {
      System.out.println(sourceStrArray[i]);
    }
  }
}

輸出結(jié)果:

?
1
2
3
4
5
6
7
8
1
2
3
4
5
1
2
3,4,5

split 的實現(xiàn)直接調(diào)用的 matcher 類的 split 的方法。在使用String.split方法分隔字符串時,分隔符如果用到一些特殊字符,可能會得不到我們預(yù)期的結(jié)果。在正則表達(dá)式中有特殊的含義的字符,我們使用的時候必須進(jìn)行轉(zhuǎn)義,示例:

?
1
2
3
4
5
6
7
8
9
10
public class StringSplit {
  public static void main(String[] args) {
    String value = "192.168.128.33";
    // 注意要加\\,要不出不來,yeah
    String[] names = value.split("\\.");
    for (int i = 0; i < names.length; i++) {
      System.out.println(names[i]);
    }
  }
}

split分隔符總結(jié)

1.字符"|","*","+"都得加上轉(zhuǎn)義字符,前面加上"\\"。

2.而如果是"\",那么就得寫成"\\\\"。

3.如果一個字符串中有多個分隔符,可以用"|"作為連字符。

比如:String str = "Java string-split#test",可以用Str.split(" |-|#")把每個字符串分開。這樣就把字符串分成了3個子字符串。 

 java.util.Tokenizer JDK 1.0 or later

StringTokenizer

StringTokenizer 類允許應(yīng)用程序?qū)⒆址纸鉃闃?biāo)記。StringTokenizer 是出于兼容性的原因而被保留的遺留類(雖然在新代碼中并不鼓勵使用它)。建議所有尋求此功能的人使用 String 的 split 方法或 Java.util.regex 包。

代碼示例

?
1
2
3
4
5
6
7
8
9
10
public class StringSplit {
  public static void main(String[] args) {
    String ip = "192.168.128.33";
    StringTokenizer token=new StringTokenizer(ip,".");
    while(token.hasMoreElements()){
     System.out.print(token.nextToken()+" ");
    }
 
  }
}

但是StringTokenizer對于字符串"192.168..33"的分割,返回的字符串?dāng)?shù)組只有3個元素,對于兩個分隔符之間的空字符串會忽略,這個要慎重使用。

但是String.split(String.split是用正則表達(dá)式匹配,所以不使用KMP字符串匹配算法)用的都是按順序遍歷的算法,時間復(fù)雜度O(m*n),較高,所以性能上,StringTokenizer好很多,對于頻繁使用字符串分割的應(yīng)用,例如etl數(shù)據(jù)處理,使用StringTokenizer性能可以提高很多。

感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 欧美18-19sex性处| 天天舔天天操天天干 | 国产偷窥 | 国产精品久久久久久影院 | 好骚好紧 | 热久久99精品这里有精品 | 99在线视频精品 | 色批网站www | 欧美交换乱理伦片120秒 | hd在线观看免费高清视频 | 精品国产区一区二区三区在线观看 | 色悠久久久久综合欧美99 | 美女做又爽又黄又猛 | xxxx性欧美极品另类 | 百合互慰吃奶互揉漫画 | 免费一级特黄特色大片在线 | 雪恋电影完整版免费观看 | 91搞搞| 国产精品久久久久久五月尺 | 免费观看日本 | 星空无限传媒视频在线观看视频 | 国产麻豆精品视频 | 99国产精品热久久久久久夜夜嗨 | 日本视频中文字幕 | 日韩欧美在线一区二区三区 | 福利一区三区 | 免费大片 | 日本艳鉧动漫1~6在线观看 | 情欲综合网 | 国产在线麻豆波多野结衣 | 日韩一级在线观看 | 俺去俺来也www色官网免费的 | 精品日本一区二区 | 欧美精品黑人巨大在线播放 | 国产亚洲福利一区二区免费看 | 国产色婷婷亚洲 | 福利国模私拍视频在线观看 | 5g影院天天影院天天爽影院网站 | 国产高清不卡码一区二区三区 | 青青在线视频免费 | 好男人资源免费观看 |