【学习笔记】第十三章 字符串

来源:互联网 发布:卡西欧授权的淘宝网店 编辑:程序博客网 时间:2024/05/30 04:29

不可变String

每一个字符串对象都是不可改变的,看似改变的String的方法只是将引用指向了一个新的字符串。

public class Demo {    public static void main(String[] args) {        String s = "www";        System.out.println(s.toUpperCase() + " " + s);    }}//Output: WWW www

虽然将字符串转为了大写却并没有改变原来的字符串。

StringBuilder较String效率高。

StringBuilder和StringBuffer后者线程安全。


13.5 格式化输出

Stirng s = “233”;
system.out.format(“the string is %s”, s);

等价于C语言中的
printf(“the string is %s”, s);

Formatter类
e.g. Float fl = 1.0;
Formatter f = new Formatter(System.out);
f.format(“%5s”, s);//右对齐,若不满5个字符不全5个。
f.format(“%-5s”, s);//左对齐,若不满5个字符不全5个。
f.format(“%5.6s”, s);//右对齐,若不满5个字符不全5个,且长度不超过6个。
f.format(“%.6f”, fl);//右对齐,小数点保留后六位。

只要对象不为空,在转为boolean对象时,值均为true。

int i = 0;System.out.format("%b", i);//Output:true

13.6 正则表达式

调用String对象的match方法,进行匹配,返回一个表示是否匹配成功的boolean值。

spilt方法,以正则表达式匹配字符作为分割,返回分割后的字符串集合。

Pattern类,编译后的正则表达式,调用matcher方法,进行匹配返回一个matcher对象,包含匹配的字符串状态信息。

match的reset方法,更改匹配的字符串。

0 0
原创粉丝点击