您的位置:首页 > 文旅 > 旅游 > 房信网_车辆年检查询系统官方网站_search搜索引擎_网络推广营销公司

房信网_车辆年检查询系统官方网站_search搜索引擎_网络推广营销公司

2025/4/3 10:53:43 来源:https://blog.csdn.net/lxsxjsj/article/details/144316708  浏览:    关键词:房信网_车辆年检查询系统官方网站_search搜索引擎_网络推广营销公司
房信网_车辆年检查询系统官方网站_search搜索引擎_网络推广营销公司

1.字符串拆分

可以把一个完整的字符串按照规定的分隔符拆分为若干个子字符串

String[] split(String regex)

将字符串全部拆分

String[] split(String regex,int limit)

将字符串以指定的格式拆分,拆分成limit组

实例:字符串的拆分处理

public class Main4 {public static void main(String[] args) {String str = "Hello world xiaoli ser";//按照空格拆分字符串String[] result = str.split(" ");for(String s : result){System.out.println(s);}}
}

 实例:字符串的部分拆分

public class Main5 {public static void main(String[] args) {String str = "Hello World xiao li xiansheng";String[] result = str.split(" ",3);for(String s: result){System.out.println(s);}}
}

".split(regex,limit)"其中的regex是分隔符的形式,limit是要拆分成几段

有一些特殊字符作为分割符无法正确拆分,需要加上转义

比如拆分ip地址

public class Main6 {public static void main(String[] args) {String s = "192.168.1.1";String[] result = s.split("\\.");for(String str : result){System.out.println(str);}}
}

注意事项:

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

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

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

实例:多次拆分

public class Main7 {public void toString(String[] arr){System.out.println(arr);}public static void main(String[] args) {String str = "name=zhangsan&age=18";String[] result = str.split("&");for(int i = 0;i<result.length;i++){String[] temp = result[i].split("=");System.out.println(temp[0]+"="+temp[1]);}}
}

2.字符串截取

方法

String substring(int beginlndex)

从指定索引到结尾

String substring(int begindex,int endindex)

截取部分字符串 

public class Main {public static void main(String[] args) {String str = "Hello World";System.out.println(str.substring(6));System.out.println(str.substring(0,4));String s1 = str.substring(0,4);String s2 = str.substring(6);System.out.println(s1+s2);}
}

注意事项:

1.字符串中得索引与数组中的下标是一样的,都是从0开始

2.substring(0,5)其中的0与5是[0,5)是前闭后开的也就是说是不包含5的

3.去掉字符串中的左右空格,保留中间的空格

public class Main2 {public static void main(String[] args){String str = "  hello world  ";System.out.println("["+str+"]");System.out.println("["+str.trim()+"]");}
}

tirm()会去掉首尾的所有空白字符串(空格,换行,制表符等) 

4.字符串大小写转换

public class Main3 {public static void main(String[] args) {String str = "HeLLo WorlD *&%$ 你好";//把所有的大写的英文字符转成小写System.out.println(str.toLowerCase());//把所有的小写的英文字符转成大写System.out.println(str.toUpperCase());}
}

5.字符串的不可变性

String是一种不可变的对象,字符串中的内容是不可以被改变的

6.字符串修改

注意的是:尽量避免对String类型直接进行修改,因为String类是不能修改的,所有的修改都会创建新对象,效率非常低下. 

public class Mainstream {public static void main(String[] args) {String str = "hello";str+="world";System.out.println(str);}
}
public class Mainstream {public static void main(String[] args) {long startTime = System.currentTimeMillis();String s = "hello";for(int i = 0;i<10_0000;i++){s+=i;}long endTime = System.currentTimeMillis();System.out.println(endTime - startTime);}
}
//10万次加法计算时间用了17017ms
public class Main4 {public static void main(String[] args) {long startTime = System.currentTimeMillis();StringBuilder stringBuilder = new StringBuilder("hello");for(int i = 0;i<100_0000;i++){stringBuilder.append(i);}long endTime = System.currentTimeMillis();long elapsedTime = endTime - startTime;System.out.println(elapsedTime);}
}
//100万次加法计算时间用了21ms

通过上述代码可以看出对String直接修改,效率是非常慢的,因此我们在修改字符串时可以选择StringBuffer或者StringBuilder

 

 

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com