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

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

示例代码

public classStringSplit {public static voidmain(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]);

}

}

}

输出结果:

1

2

3

4

5

1

2

3,4,5

split 的实现直接调用的 matcher 类的 split 的方法。在使用String.split方法分隔字符串时,分隔符如果用到一些特殊字符,可能会得不到我们预期的结果。在正则表达式中有特殊的含义的字符,我们使用的时候必须进行转义,示例:

public classStringSplit {public static voidmain(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分隔符总结

1.字符"|","*","+"都得加上转义字符,前面加上"\\"。

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

3.如果一个字符串中有多个分隔符,可以用"|"作为连字符。

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

java.util.Tokenizer JDK 1.0 or later

StringTokenizer

StringTokenizer 类允许应用程序将字符串分解为标记。StringTokenizer 是出于兼容性的原因而被保留的遗留类(虽然在新代码中并不鼓励使用它)。建议所有寻求此功能的人使用 String 的 split 方法或 java.util.regex 包。

代码示例

public classStringSplit {public static voidmain(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"的分割,返回的字符串数组只有3个元素,对于两个分隔符之间的空字符串会忽略,这个要慎重使用。

但是String.split(String.split是用正则表达式匹配,所以不使用KMP字符串匹配算法)用的都是按顺序遍历的算法,时间复杂度O(m*n),较高,所以性能上,StringTokenizer好很多,对于频繁使用字符串分割的应用,例如etl数据处理,使用StringTokenizer性能可以提高很多。

java分割字符串_Java中分割字符串相关推荐

  1. java list 对象 json字符串_Java中Json字符串直接转换为对象的方法(包括多层List集合)...

    使用到的类:net.sf.json.JSONObject 使用JSON时,除了要导入JSON网站上面下载的json-lib-2.2-jdk15.jar包之外,还必须有其它几个依赖包:commons-b ...

  2. java字符截取_java中截取字符串方法

    Java 简介 substring public String substring(int beginIndex) 返回一个新的字符串,它是此字符串的一个子字符串.该子字符串始于指定索引处的字符,一直 ...

  3. java中截取部分字符串_JAVA中截取字符串substring用法详解

    substring public String substring(int beginIndex) 返回一个新的字符串,它是此字符串的一个子字符串.该子字符串始于指定索引处的字符,一直到此字符串末尾. ...

  4. java截取倒数后六位的字符串_JAVA中截取字符串substring用法详解

    substring public String substring(int beginIndex) 返回一个新的字符串,它是此字符串的一个子字符串.该子字符串始于指定索引处的字符,一直到此字符串末尾. ...

  5. java中如何分隔字符串_Java中分割字符串

    java.lang.String的split()方法, JDK 1.4 or later public String[] split(String regex,int limit) 示例代码 publ ...

  6. java 字符分割函数_java中的字符串分割函数

    Java中的我们可以利用split把字符串按照指定的分割符进行分割,然后返回字符串数组,下面是string.split的用法实例及注意事项: java.lang.string.split split ...

  7. java中将json字符串_Java中JSON字符串与java对象的互换实例详解

    在开发过程中,经常需要和别的系统交换数据,数据交换的格式有XML.JSON等,JSON作为一个轻量级的数据格式比xml效率要高,XML需要很多的标签,这无疑占据了网络流量,JSON在这方面则做的很好, ...

  8. java有什么字符串_Java 中操作字符串都有哪些类?它们之间有什么区别

    1. String.StringBuffer.StringBuilder 原文出自<编写高质量代码:改善 Java 程序的 151 个建议> CharSequence 接口有三个实现类与字 ...

  9. java中的字符串_Java中的字符串

    String:这是一个不可变类,现使用现创建,适用于少量的字符串操作的情况 StringBuilder:可变类,速度快.线程不安全,适用于单线程下在字符缓冲区进行大量操作的情况 StringBuffe ...

最新文章

  1. 虹口区巡检机器人_上海巡检机器人
  2. 细述hbase协处理器
  3. npm安装serve实现静态资源的访问
  4. ALGO-1 区间k大数查询
  5. 《剑指offer》全解(图文结合,通俗易懂,一篇看爽)
  6. 演练:调试 Windows 窗体
  7. php camp,Byte Camp
  8. 计算机专业改动漫设计,《计算机动漫与游戏制作》专业课程体系改革方案.doc...
  9. C++学习总结(1)
  10. 2023南京师范大学计算机考研信息汇总
  11. 左耳朵耗子:云原生时代的开发者应具备这5大能力
  12. None of the configured nodes are available
  13. 阿里云服务器能怎么玩呢?
  14. Epicor 调试 customization
  15. ACE_TAO 017 ACE_wrappers\examples\Reactor
  16. java+static知乎_用Java抓取知乎日报信息
  17. Windows定时开关机
  18. Ubuntu18.04下的PCL安装(摸爬滚打)
  19. 洋桃电子STM32物联网入门30步笔记三、CubeMX图形化编程、设置开发板上的IO口
  20. PHP微信管理,公众号系统,RhaPHP微信公众号管理系统,微信公众号开发框架,支持移动端管理...

热门文章

  1. linux串口中断_5年匠心之作,深度探索Linux虚拟化
  2. 腾讯地图api_数据库API接口的类型及应用场景
  3. python开发小型数据库_Python开发【第十七篇】:MySQL(一)
  4. Asp.Net 中Report Service (RDLC)动态绑定数据-学习笔记
  5. jmeter的几种参数化使用方法
  6. Leetcode-169 Majority Element
  7. vim: 远程登陆服务器时可能出现的: 方向键,回退符不能正常使用
  8. qt中new与delete使用示例
  9. 自动化设备的软件框架
  10. C# 客户端HTTP通信