国产片侵犯亲女视频播放_亚洲精品二区_在线免费国产视频_欧美精品一区二区三区在线_少妇久久久_在线观看av不卡

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

PHP教程|ASP.NET教程|JAVA教程|ASP教程|編程技術(shù)|正則表達(dá)式|

服務(wù)器之家 - 編程語(yǔ)言 - JAVA教程 - Java中分割字符串的兩種方法實(shí)例詳解

Java中分割字符串的兩種方法實(shí)例詳解

2020-07-16 11:53ggjucheng JAVA教程

這篇文章主要介紹了Java中分割字符串的兩種方法,一種是java.lang.String 的 split() 方法,,另外一種是用String Tokenizer類。文中的每種方法都給出了詳細(xì)的示例代碼,相信對(duì)大家的理解和學(xué)習(xí)具有一定的參考借鑒價(jià)值,有需要的朋友們下

前言

相信大家應(yīng)該都知道在java編程中,有時(shí)候我們需要把一個(gè)字符串按照某個(gè)特定字符、字母等作為截點(diǎn)分割這個(gè)字符串,這樣我們就可以使用這個(gè)字符串的一部分或者把所有截取的內(nèi)容保存到數(shù)組里等操作。下面這篇文章就給大家分享了兩種分割的方法,下面來(lái)一起看看吧。

一、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個(gè)字符串
  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 的實(shí)現(xiàn)直接調(diào)用的 matcher 類的 split 的方法。在使用String.split方法分隔字符串時(shí),分隔符如果用到一些特殊字符,可能會(huì)得不到我們預(yù)期的結(jié)果。

在正則表達(dá)式中有特殊的含義的字符,我們使用的時(shí)候必須進(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";
  // 注意要加\\,要不出不來(lái),yeah
  String[] names = value.split("\\.");
  for (int i = 0; i < names.length; i++) {
   System.out.println(names[i]);
  }
 }
}

split分隔符總結(jié)

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

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

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

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

二、java.util.Tokenizer JDK 1.0 or later

StringTokenizer

StringTokenizer 類允許應(yīng)用程序?qū)⒆址纸鉃闃?biāo)記。StringTokenizer 是出于兼容性的原因而被保留的遺留類(雖然在新代碼中并不鼓勵(lì)使用它)。建議所有尋求此功能的人使用 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對(duì)于字符串"192.168..33"的分割,返回的字符串?dāng)?shù)組只有3個(gè)元素,對(duì)于兩個(gè)分隔符之間的空字符串會(huì)忽略,這個(gè)要慎重使用。

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

總結(jié)

以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作能帶來(lái)一定的幫助,如果有疑問(wèn)大家可以留言交流。

原文鏈接:http://www.cnblogs.com/ggjucheng/p/3352419.html

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 五月婷婷狠狠爱 | 成人在线一区二区 | 国产福利视频在线观看 | 欧美一区二区三区电影 | 黄色免费观看网址 | av在线免费网址 | 久久精品二区 | 免费观看www7722午夜电影 | 日韩在线中文字幕 | 日韩在线精品视频 | 在线a视频| 国产久 | 国产中文一区 | 欧美精品久久 | 欧美日韩免费在线 | 国产在线观看二区 | 在线中文字幕视频 | 国产精品免费视频一区 | 国产欧美精品一区二区三区四区 | 色成人亚洲www78ixcom | 久久久精品日本 | 久久久久久高清 | 久久久久久91亚洲精品中文字幕 | 久久久久久亚洲精品 | 精品9999| 色视频在线免费观看 | 国产在线不卡一区 | 久久久精品网站 | 国产日韩欧美一区 | 伦乱视频| 欧美一区亚洲二区 | 日日操天天操 | 欧美 日韩 中文 | 久久久99久久久国产自输拍 | 亚洲视频中文字幕 | 天堂v视频永久在线播放 | 岛国免费 | 精品久久久久久久久久久久久久 | 亚洲精品成人在线 | 国产精品视频入口 | 日韩成人一区二区 |