Java编程思想-13字符串
2017-05-09 01:36
239 查看
一、字符串
1、String:不可变字符序列
String对象一经初始化,就不能被改变String变更的处理机制:生成新的String对象-->赋值-->返回新对象的引用
编译器会适当使用StringBuilder优化性能
2、StringBuilder:可变字符序列
简单的字符串操作,用String频繁的字符串操作,用StringBuilder
3、方法
字符串方法会频繁使用,详情见API文档,java.lang.String、java.lang.StringBuilder二、格式化输出
带格式的输出,不是经常用到,详情见API文档,java.util.Formatter三、正则表达式
1、定义
正则表达式,Regular Expression,用于操作字符串、符合一定规则的表达式2、 常用规则
[a-z] a到z中的任意字母 [abc] a、b、c中任意一个 [^abc] 除了a、b、c外的任意字符 ^ 行的开头 $ 行的结尾 . 任何字符 && 与 \d 数字:[0-9] \D 非数字:[^\d] \w 单词字符:[a-zA-Z0-9_] \W 非单词字符:[^\w] \s 空白字符:[\t\n\f\r\x0B] \S 非空白字符:[^\s] \b 单词边界 \B 非单词边界 X? X,零次或一次 X* X,零次或多次 X+ X,一次或多次 X{n} X,恰好n次 X{n,} X,至少n次 X{n,m} X,n到m次 \\ 反斜线字符 \t 制表符 \n 新行(换行)符 \r 回车符 \f 换页符 \e 转义符 详情见API文档,java.util.regex.Pattern
3、捕获组
捕获组:是用括号划分的正则表达式,可以根据组的编号引用捕获组\n 符合规则的第n个捕获组 (X) X,作为捕获组
//示例1:A(B(C))D,组0是ABCD、组1是BC、组2是C //示例2:叠词替换成单个 String str="aabbcccc".replaceAll("(.)\\1+","$1");
4、匹配
boolean b; String s="abc",regex="[abc]+"; //方式一 b=s.matches(regex); //方式二 //优点:可调用java.util.regex.Matcher类的方法 Pattern p=Pattern.compile(regex); Matcher m=p.matcher(s);
四、扫描输入
java.util.Scannerdelimiter(): 返回此 Scanner当前用于匹配分隔符的 Pattern。 hasNext(): 是否存在下一个 hasNextLine(): 是否存在下一行 next(): 返回下一个 nextLine(): 返回下一行
//扫描控制台输入 Scanner s = new Scanner(System.in); System.out.println("请输入字符串:"); while (true) { String line = s.nextLine(); if (line.equals("exit")){ break; } System.out.println(">>>" + line); }
相关文章推荐
- 13字符串-Java编程思想
- 2014年2月8日 java编程思想 String字符串学习 面试题目回顾
- JAVA编程思想-第十三章 字符串
- Java编程思想 ch13 字符 4000 串
- JAVA编程思想学习总结:第十三章字符串
- Java编程思想_字符串
- Java编程思想笔记——第十三章 字符串
- java编程思想笔记--字符串部分一
- java编程思想-字符串
- 读书笔记 JAVA编程思想 第13章 字符串
- Java编程思想之字符串
- 《Java 编程思想》004 switch对字符串支持的引申思考
- 《Java 编程思想》第13章 字符串 笔记
- JAVA编程思想---字符串操作
- java编程思想笔记--字符串部分二
- 《Java 编程思想》--第十三章:字符串
- Java 编程思想13章--字符串
- Java编程思想3感悟(8)---一切都是对象
- JAVA编程思想:附录F 推荐读物
- java编程思想3感悟(2)---每个对象都有一个接口(方法)