可以调用string类中的substring方法来截取字符串
例:
substring 方法后面会总结
拼接Java允许使用‘+’来拼接两个字符串
也就是说不能直接修改内存中的字符串 但是可以修改代表字符串的标符来间接修改字符串。
比如说
str = "str";
不能直接修改"str",这里面的内容是不变的。
但是可以修改标识符来改变标识符指向的字符串
str = str.substing(0,1)+"sn";
就可以得到新的字符串;
检测字符串是否相等可以用equals方法来检测两个字符串是否相等
例:
对于表达式t.equals(e);
如果字符串t与e相等则返回true 否则false
注意:
"=="是来测试字符串地址是否相等。
空串与Null串空串是长度为0的字符串
可以使用下列代码检测字符串是否为空
if(str.length() == 0)
if(str.equals(""))
string类的对象还可以存放特殊值null这个表示没有任何对象与该变量相关联 如果要检查一个字符串是否为null
if(str == null)
检查一个字符串既不为空也不为null
使用if(str != null && str.length() !=0)
一定要首先检查字符串是否为null否则会出错//有待补充
代码单元与代码点char类型代表一个代码单元 而一个代码点可能代表一对代码单元。
string的length方法返回的是字符串的代码单元数量。
想要得到真正的字符串长度即代码点数量可以调用
str.codePointCount(0,str.length());
调用charAt(n)方法将会返回n位置的代码单元
想要得到第i个代码点,则应该使用下列语句
int index = str.offsetByCodePoints(0,i);
int cp = str.codePointAt(index);
在UTF-16中表示某个字符需要两个代码单元。
String 类中的方法常用的方法有
1.equals(Object other)
如果字符串与other相等,返回true
2.equalsIgnoreCase(String other)
也就是忽略大小写的equals方法
3.startsWith(String prefix) endsWith(String suffix)
如果字符串以prefix开头(suffix结尾)则返回true
4.indexOf(String str) indexOf(String str,int fromIndex)
从0位置(或fromIndex位置)开始计算 如果在原始串中不存在str 则返回-1
5.length()
返回字符串的长度(代码单元的数量)
6.codePointCount(int startIndex,int endIndex)
返回startIndex与endIndex之间的代码点数量。将没有配对的代用字符计入代码点
7.substring(int beginIndex) substring(int beginIndex,int endIndex)
返回一个新字符串。这个新字符串包含从beginIndex到串尾或endIndex-1的所有代码单元
8.trim()
返回一个新字符串。这个字符串删除了头和末尾的空格
9.toCharArray()
将字符串转化成字符数组
StringBuffer类StringBuffer类也可以存放字符串,和String类不同的是,StringBuffer字符串代表的是可变的字符序列,可以对字符串对象内容进行修改。
StringBuffer append(各类型参数)追加到字符串后面
length() 校验字符串长度
tostring()转化成字符串形式
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) | 黑马程序员IT技术论坛 X3.2 |