A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 梦缠绕的时候 黑马粉丝团   /  2018-9-17 10:13  /  1006 人查看  /  1 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

子串

可以调用string类中的substring方法来截取字符串

例:



  • String string = "name";



  • String son = string.substring(0,2);



  • //则截取的是na


substring 方法后面会总结

拼接

Java允许使用‘+’来拼接两个字符串



  • String name = "name";



  • String inner = "inner";



  • String message = name+inner;



  • //则message的内容为nameinner


不可变字符串

也就是说不能直接修改内存中的字符串 但是可以修改代表字符串的标符来间接修改字符串。

比如说

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()转化成字符串形式


1 个回复

倒序浏览
奈斯
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马