不如今日来说 有关StringBufferr类和字符串格式化的内容~

---恢复内容开始---

  你们说“程序员秃顶算不算工伤?”☹☹

啊哈,比较期待能有哪怕一周一次的头部护理。

学习进行时:

1. 字符串的常用操作

1.1  判断字符串的开头与结尾

操作字符串时,如果需要判断字符串开始与结尾的内容可以使用startWith()方法与 endsWith()方法来实现。startWith()方法可以判断字符串是否以指定的内容开始,endsWith()方法可以判断字符串是否以指定的内容结尾,这两个方法的返回值都是boolean类型。下面通过一个示例来演示startWith()方法的使用。

示例1

从运行结果可以看出,如果使用startWith(()方法判断此字符串是否以指定的内容开始,其返回值为true,否则为flase。

下面通过一个示例来演示endsWith()方法的使用。

示例2:

2.比较字符串是否相等

程序开发中经常需要比较两个字符串是否相等。比较字符串的内容是否相等不能使用比较运算符“==”进行判断,因为比较运算符“==”是比较两个对象的内存地址值是否相等。当使用“==”比较两个字符串时,即使它们内容相同但是地址值不同,其比较的结果也为flase。

下面通过一个示例来演示使用“==”比较两个字符串的结果。

示例3:

从示例中可以看出使用“==”比较字符串的结果可能不太准确。如果要比较两个字符串内容是否相同,可以使用String类中的equals()方法,当使用equals()方法比较的两个字符串内容相同时会返回true,否则返回flase。

接下来通过示例来演示equals()方法的使用

示例4:

有时候我们需要忽略大小写来比较字符串,比如验证码输入的校验就是忽略大小写的。如果要忽略大小写比较两个字符串是否相同,可以使用equalsIgnoreCase()方法。

下面通过一个示例来演示equalsIgnoreCase()方法。

示例5

3.字母大小写转换

在实际应用中有时候可能需要将字符串中的字母都转换成大小写或者小写。String类中的toLowerCase()方法可以将获取的字符串的字母都转换成小写后的副本,toU

pperCase()方法可以将获取的字符串的字母都转换成大写后的副本。

下面通过一个示例来演示toLowerCase()方法的使用

示例6:

注意:toLowerCase()方法转换字符串是只是将原本是大写的字母转换成大写,而对于原先就是小写字母或者字母以外的内容不做任何改变。

toUpperCase()方法可以将获取字符串的字母,都转换成大写后的副本。

下面的·示例中演示了toUpperCase()方法的使用

示例7:

4.分割字符串

String类中split()方法可以根据指定的内容对字符串进行分割,并且将分割后的结果以字符串数组的形式返回。

用下面的示例来演示split()方法的使用

示例8:

注意:如果没有统一的分隔符来分割字符串,可以定义多个符号对字符串进行分割,多个分隔符之间需要使用“|”连接,例如“*|$”表示会按照“*”或"$"对字符串进行分割。

2.格式化字符串

String类的静态方法format()用于按照指定的格式来格式化字符串,该方法通过传递一个指定的转换符来返回一个格式化后的字符串。

2.1 日期格式化

程序开发过程中经常需要显示当前的时间与日期,如果想要输出满意的日期与时间格式,一般要编写大量的代码进行运算。而在String类中,format()方法可以通过转换符来返回一个指定格式的字符串。 

                                                                                                                  常用的日期格式转换符

                                         

下面通过一个示例来演示使用String类的format()方法将日期转换为指定格式的字符串。

2.2   时间格式化

 format()方法不仅可以对日期进行格式化,还可以对时间进行格式化。利用时间格式转换符可以将时间格式化为 时,分,秒,毫秒字符串。

常用的时间格式转换符见下表:

下面通过一个示例来演示使用String类的format()方法将时间格式化。

3. StringBuffer类的使用

字符串一旦创建,其内容就是固定不可改变的,如果对字符串进行修改就会产生新的字符串对象。为了提高程序的效率,Java提供了StringBuffer类。StringBuffer类可以创建一个长度可变的字符缓冲区,使用StringBuffer类添加或删除内容不会产生新的字符串对象。

下表介绍了StringBuffer类中常用的一些方法

4.String与SringBuffer的区别

StringBuffer类的内部实现方式和String类不同。简单的说,String与StringBuffer就是变量和常量的关系,StringBuffer对象的内容修改后不会创建新的对象;而String对象一旦产生后就可以被修改,若重新修改就会创建新的字符串对象。

本次小结:

a.判断字符串是否以指定内容开头或结尾可以使用startsWith()方法与endsWith()方法。

b.比较字符串是否相同可以使用equals()方法,忽略大小写比较字符串是否相等可以使用equalsIgnoreCase()方法。

c.String类的toLowerCase()方法与toUpperCase()方法可以获取字符串中字母转换为大写或小写后的副本。

d.String类的split()方法可以按照指定的内容分割字符串。

e.String类的format()方法可以将其他类型的数据格式化为指定格式的字符串。

f.频繁操作字符串时使用StringBuffer类比String类效率更高。

好了,我要去吃饭了。下次见☹

原文地址:https://www.cnblogs.com/tianyating/p/9061145.html