开发工具与关键技术: MyEclipse 10、Java语法
作者:邓婵
撰写时间:2019年 06月 22日
在java 中用String类进行描述,而对字符串进行了对象的封装的好处是可以对字符串这种常见数据进行方便的操作,对象封装后可以定义多属性和行为。
String类的特点 :字符串一旦被初始化,就不可以被改变,存放在方法区中的常量池中。
String字符串的方法:
一、 构造方法:将字节数组或者字符数组转成字符串
如:String str = new String();
说明:这样初始化一个新创建的 String 对象,使其表示一个空字符序列,简单的说也就是创建了一个空内容的字符串。
再如:String str1 = "";
说明:这个是指向一个具体的字符串对象,只不过这个字符串中没有内容。一般在定义字符串时,不用new,可直接写入对象或者为空。
二、 一般方法:
- String类的判断:
例1:判断字符串是否为空
String str1 ="";
System.out.println(str1.isEmpty());
错误的写法:
String str2 = null;
System.out.println(str2.isEmpty());
这样的写法是错误的,它在执行时会发生错误,结果输出如图下所示:
正确的写法:
如果要判断String不为 null或者"",则需要写判断,而isEmpty方法只判断字符串是否为空,不能判断null值,相关代码可参考图下:
2. String类的转换:
String类中的toCharArray方法相当于把字符串拆成一个个的字符,而valueOf方法是把一个个的字符拼接为字符串,它们两者是互换的。相关代码可参考图下:
结果输出如图下所示:
3. String类的比较:
所谓的比较就是按照字典顺序比较两个字符串,该比较是根据字符串中各个字符的Unicode值按字典顺序将String对象表示的字符序列与参数字符串所表示的字符序列进行比较。
例子中String类中通过compareTo方法与compareToIgnoreCase方法进行比较,它们的用法首先看位数是否相同,如果位数不同,直接拿位数减,如果位数相同,就一位一位的比较,直到出现不同那一位,把不同那一位字母或文字的顺序的差给减出来,然后把它作为结果。相关代码如图下所示:
说明:其实它是按照Unicode编码表值比较两个字符串的大小,是区分大小写的,如例子中的str5输出为67,而str6输出为97,通过计算得出图下的结果: