java--split,index,StringTokenizer比较
2024-09-05 07:51:40
import java.util.StringTokenizer;
public class SplitDemo {
//jdk8
public static void main(String[] args){
String s = "a,b,c";
String[] split = s.split(",");
for (String s1 : split) {
System.out.println(s1);
}
StringTokenizer st = new StringTokenizer(s,",");
while (st.hasMoreTokens()){
String s1 = st.nextToken();
System.out.println(s1);
}
String s2 = "a,b,c";
while (true){
int i = s2.indexOf(",");
if (i < 0 && s2.length()<0){
break;
}
if (i < 0){
System.out.println(s2);
break;
}else {
System.out.println(s2.substring(0,i));
s2 = s2.substring(i+1);
}
}
testSplit();
testStringTokenizer();
testIndexOf();
//split-598
//StringTokenizer-38
//indexOf-4577
}
public static void testSplit(){
StringBuffer sb = new StringBuffer();
for (int i = 0; i < 1000; i++) {
sb.append(i);
if (i < 999){
sb.append(",");
}
}
String str = sb.toString();
long begin = System.currentTimeMillis();
for (int i = 0; i < 10000; i++) {
str.split(",");
}
long end = System.currentTimeMillis();
System.out.println("split" + (end-begin));
}
public static void testStringTokenizer(){
StringBuffer sb = new StringBuffer();
for (int i = 0; i < 1000; i++) {
sb.append(i);
if (i < 999){
sb.append(",");
}
}
String str = sb.toString();
long begin = System.currentTimeMillis();
for (int i = 0; i < 10000; i++) {
StringTokenizer st = new StringTokenizer(str);
while (st.hasMoreTokens()){
st.nextToken();
}
st = new StringTokenizer(str);
}
long end = System.currentTimeMillis();
System.out.println("StringTokenizer" + (end-begin));
}
public static void testIndexOf(){
String s = null;
StringBuffer sb = new StringBuffer();
for (int i = 0; i < 1000; i++) {
sb.append(i);
if (i < 999){
sb.append(",");
}
}
s = sb.toString();
String str = s;
long begin = System.currentTimeMillis();
for (int i = 0; i < 10000; i++) {
while (true){
int a = str.indexOf(",");
if (a < 0){
break;
}
str = str.substring(a+1);
}
str = s;
}
long end = System.currentTimeMillis();
System.out.println("indexOf" + (end-begin));
}
}
最新文章
- Uiautomator-----新建工程
- 在Spring MVC项目中,注解方式使用 .properties 文件及 UTF-8编码问题
- protobuf初体验
- PHPstudy 无法启动Apache
- centos7 zabbix3 install done
- Android开发学习之路-下拉刷新以及GridView的使用
- 即时定位与地图构建SLAM(Simultaneous Localization and Mapping)
- C#基础知识学习
- BingMap的GeocodeService进行地理位置正向和反向检索--后台实现
- C#如何获得 WINDOWS 版本号
- DP 动态规划
- Hive笔记——技术点汇总
- MongoDB 4.0 开发环境搭建集群
- oracle之序列用法
- docker swarm:Error response from daemon: rpc error: code = Unavailable desc = grpc: the connection is unavailable
- 运用Zabbix实现内网服务器状态及局域网状况监控(3) —— Zabbix服务端安装
- 2018GIAC全球互联网架构大会上海站最新日程抢先看!
- “无效数字” ;java.lang.Integer cannot be cast to java.lang.String
- Android BLE设备蓝牙通信框架BluetoothKit
- 前端——实用UI组件库