简单了解Java字符串(操作)
字符串遍历
Stringstr="asdfghjkl";
1.
for(inti=0;i2.
char[]c=str.toCharArray(); for(charcc:c){ ...//cc直接用了 }3.
for(inti=0;i类似的,arraylist三种遍历方法:
ArrayList支持3种遍历方式 (01)第一种,通过迭代器遍历。即通过Iterator去遍历。 Integervalue=null; Iteratoriter=list.iterator(); while(iter.hasNext()){ value=(Integer)iter.next(); } (02)第二种,随机访问,通过索引值去遍历。 由于ArrayList实现了RandomAccess接口,它支持通过索引值去随机访问元素。 Integervalue=null; intsize=list.size(); for(inti=0;i效率分析:遍历ArrayList时,使用随机访问(即,通过索引序号访问)效率最高,而使用迭代器的效率最低!
类型转换
如何实现String与基本数据类型的装换
将String转换为基本的数据类型。8个wrapperclass(Integer,Double,...)提供了相对应的方法parsexxx(Stringstr)将字符串转换为基本的数据类型,如下:
Stringstr1="123"; Stringstr2="12.3"; Stringstr3="true"; inta=Integer.parseInt(str1);//123 doubled=Double.parseDouble(str2);//12.3 booleanflag=Boolean.parseBoolean(str3);//true如何将基本数据类型转换为String,可以使用String.valueOf()方法进行转换,如下:
inta=123; doubleb=13.05; booleanflag=true; Stringstr1=String.valueOf(a);//123 Stringstr2=String.valueOf(b);//13.05 Stringstr3=String.valueOf(flag);//true同时还有着更为简单快捷的方式,直接在基本数据类型之后添加“”,如下;
Stringstr1=a+"";//a Stringstr2=flag+"";//true分割字符串
在java里分割字符串是通过正则表达式来分割
Stringstr="aa-bb-cc-dd"; String[]res=str.split("-");//aabbccdd取子串
Stringstr="abcdefg"; str=str.substring(2,5);//cde一个问题
在一些敏感信息上,为什么倾向用char[],而不是String?
当String一旦创建,便不可再修改,直到gc将它回收.可gc的回收时间无法预测.即使一个对象不存在引用,也需要在未来的某个时间才会让给出回收.所以String操作敏感信息,有渗漏的风险.可char[]就不一样了,我们可以通过程序直接控制其元素,一般敏感信息不再有用,直接将数组即可,因此更倾向使用char[]来保存密码等敏感信息
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。