最近在项目中遇到一个小问题,一个字符串分割成一个数组,类似String str=”aaa,bbb,ccc”; 然后以”,”为分割符,将其分割成一个数组,用什么方法去实现呢?

第一种方法:

可能一下子就会想到使用split()方法,用split()方法实现是最方便的,但是它的效率比较低

第二种方法:

使用效率较高的StringTokenizer类分割字符串,StringTokenizer类是JDK中提供的专门用来处理字符串分割子串的工具类。它的构造函数如下:

public StringTokenizer(String str,String delim)

str是要分割处理的字符串,delim是分割符号,当一个StringTokenizer对象生成后,通过它的nextToken()方法便可以得到下一个分割的字符串,再通过hasMoreTokens()方法可以知道是否有更多的子字符串需要处理。这种方法的效率比第一种高。

第三种方法:

使用String的两个方法—indexOf()和subString(),subString()是采用了时间换取空间技术,因此它的执行效率相对会很快,只要处理好内存溢出问题,但可大胆使用。而indexOf()函数是一个执行速度非常快的方法,

原型如下:

public int indexOf(int ch)   它返回指定字符在String对象的位置。如下:

举例:

"ab&&2"以&分割成"ab" "2"

String tmp = "ab&&2";

String splitStr = null;

int j = tmp.indexOf("&");      // 找分隔符的位置

splitStr = tmp.substring(0, j);    // 找到分隔符,截取子字符串

tmp = tmp.substring(j + 2);    // 剩下需要处理的字符串

System.out.println(splitStr);

System.out.println(tmp);

ab

2

以上这篇java 字符串分割的三种方法(总结)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。

java string分割_java 字符串分割的三种方法(总结)相关推荐

  1. java的字符串截取函数_java 字符串截取的三种方法(推荐)|chu

    众所周知,java提供了很多字符串截取的方式.下面就来看看大致有几种. 1.split()+正则表达式来进行截取. 将正则传入split().返回的是一个字符串数组类型.不过通过这种方式截取会有很大的 ...

  2. java字符串abc反转_JAVA字符串反转的三种方法

    方法一:使用StringBuilder import java.util.Scanner; public class StrReversal { public static void main(Str ...

  3. java截取倒数后六位的字符串_java 字符串截取的三种方法(推荐)

    众所周知,java提供了很多字符串截取的方式.下面就来看看大致有几种. 1.split()+正则表达式来进行截取. 将正则传入split().返回的是一个字符串数组类型.不过通过这种方式截取会有很大的 ...

  4. java se 定时任务_Java实现定时任务的三种方法

    一.Quartz的特点 按作业类的继承方式来分,主要有以下两种: 作业类继承org.springframework.scheduling.quartz.QuartzJobBean类的方式作业类不继承o ...

  5. java字符串取值_java 字符串截取的三种方法

    1.split()+正则表达式来进行截取. 将正则传入split().返回的是一个字符串数组类型.不过通过这种方式截取会有很大的性能损耗,因为分析正则非常耗时. String str = " ...

  6. 实现java字符串反转的三种方法

    实现java字符串反转的三种方法 1.问题描述:将字符串String="abcdefg"实现反转变成 "gfedcba":用java语言实现. 2.解决方法: ...

  7. java浮点数化为整数_[Java教程]javascript浮点数转换成整数三种方法

    [Java教程]javascript浮点数转换成整数三种方法 0 2014-06-24 04:00:27 将浮点数转换成整数方法有很多,分享三种常用方法. Summary 暂时我就想到3个方法而已.如 ...

  8. Java程序初始化启动自动执行的三种方法

    目录 @PostConstruct注解 CommandLineRunner接口 ApplicationRunner 接口 @Order注解设置启动顺序 分享一下自己用过的java程序初始化启动自动执行 ...

  9. Java中用三种方法输出字符串_java中两个字符串连接的三种方法

    java中两个字符串连接有以下三种方法: 第一种方法:使用+: 第二种方法:使用concat(): 第三种方法:使用append(): 如下代码: public class Practice { // ...

最新文章

  1. 《当下的哲学》[法]阿兰.巴迪欧(作者)epub+mobi+azw3格式下载
  2. Palindrome Partitioning
  3. VS 2010 IDE 宏学习总结
  4. 昆士兰科技大学计算机专业,昆士兰科技大学QUT计算机科学Computer Science专业排名第101-125位(2021年THE世界大学商科排名)...
  5. [剑指offer]面试题第[49]题[Leetcode][第264题][JAVA][丑数][动态规划][堆]
  6. 阿里巴巴发布第一台云电脑“无影” 可线上无限扩容升级
  7. 在vue项目中配置axios
  8. 在Windows中如何通过命令行创建快捷方式
  9. HI3519 开发交流QQ群
  10. 2021充电必备:推荐一些免费的电子书网站及TXT阅读器
  11. LCD显示屏加入百叶窗特效显示BMP图片
  12. 太厉害了,阿里大牛把Java服务端做成一张超全的知识微缩地图
  13. 多表古典密码统计分析
  14. 产业分析:视频云服务行业
  15. 计算机科学留学硕士工资,揭晓美国大学研究生毕业起薪TOP50排行榜单 你选对了吗?...
  16. Perseus(擎天):统一深度学习分布式通信框架
  17. 面试官: 你知道 JWT、JWE、JWS 、JWK嘛?
  18. “0x00000014”内存。该内存不能为“Written”(或“Read”)的解决办法。
  19. 那些年,在MSRA实习过的女孩,现在都怎么样了?
  20. 没有logo不要紧,手动为你的BIOS添加开机logo[AMI]

热门文章

  1. 第十四周DP算法总结
  2. studio3T import a SQL Database to Mongodb(从mysql中导入数据到mongodb)
  3. 大脑皮层功能梯度的意义及其计算
  4. 神经递质/核苷代谢物质靶向代谢检测
  5. python json dumps字典后无法json格式化_python字典和json.dumps()的遇到的坑分析
  6. winform中的UI刷新总结
  7. 【银行系列第一期】中国人民银行
  8. 高等数学(第七版)同济大学 习题7-1 个人解答
  9. 学习C语言必备:VsCode c++/c语言 环境配置(易懂)
  10. 粒子群算法java_基于粒子群算法求解求解TSP问题(JAVA)