第十三章 字符串
来源:互联网 发布:淘宝旺铺基础版店招 编辑:程序博客网 时间:2024/06/11 21:00
不可变的String:
String对象是不可变的
重载“+”与StringBuilder:j
- Javap -c (表示生成JVM字节码)
- “+”编译器自动的引入了java.lang.StringBuilder类,并为每个字符串调用一次StringBuilder的append()的方法,最后调用toString()生成结果
- 当为类编写toString()方法时,如果要在toString()方法中使用循环,那么最好自己创建一个StringBuilder对象,用它来构造最终结果
- StringBuilder方法:append(),toString(),insert(),repleace(),substring(),reverse(),最终结果每次用一次append()
- StringBuffer线程安全,开销较大
无意识的递归:
希望toString()方法打印出对象的内存地址,使用this会导致递归错误,应该调用Object.toString()方法 super.toString()
格式化输出:
printf():格式修饰符
System.out.format():可用于PrintStream或PrintWriter,其中也包括System.out
Formatter类:
java.util.Formatter类。构造器可以接受多种输出目的地,最常用的还是PrintStream()、OutputStream和File
用法:Formatter f = new Formatter(System.err); f.format("%s The Turtle is at (%d,%d)\n", name, x, y);
格式化说明符:
%[argument_index$][flags][width][.precision]comversion
width:指定最小尺寸
precision:指明最大尺寸
应用于String时,表示打印String时输出字符的最大数量
应用于浮点数时,表示小数部分要显示出来的位数(默认为6位)
无法应用于整数,否则将触发异常
默认右对齐,使用"-"标志来改变对齐方向
Formatter转换:
boolean或Boolean对象,其转换结果为true或false。对其他类型参数,只要该类型不为null,那么转换的结果就永远都是true。数字0转换结果依然为true
d
整数型(十进制)
e
浮点数
c
Unicode字符
x
整数(十六进制)
b
Boolean值
h
散列码(十六进制)
s
String
%
字符“%”
f
浮点数(十进制)
String.format():返回一个String对象,接受与Formatter.format()方法一样的参数
正则表达式:
基础:
双\\在java中表示插入一个正则表达式的反斜线,插入反斜线用\\\\
换行和制表符用\n\t
" ".split()返回一个String[]
" ".replaceFirst( , ) " ".replaceAll( , )
创建正则表达式:
量词:
贪婪型、勉强型、占有型(防止回溯)
Pattern和Matcher:
Pattern p = Pattern.compile("");
Matcher m = p.matcher(String);
boolean matches() 检查regex是否匹配整个CharSequence类型的input参数
boolean lookingAt() 判断该字符串的起始部分是否能够匹配模式
pattern标记:
Pattern Pattern.compile(String regex,int flag)
Pattern.SASE_INSENSITIVE
Pattern.COMMENTS
Pattern.MULTILINE
split():
替换操作:
reset():将现有的Matcher对象应用于一个新的字符序列
正则表达式与Java I/O:
扫描输入:
Scanner定界符:
用正则表达式扫描:
StringTokenizer:
- 第十三章 字符串
- 第十三章 字符串
- 第十三章 字符串
- 第十三章 字符串
- 第十三章:字符串
- 第十三章:字符串
- 第十三章 字符串 正则表达式
- 【学习笔记】第十三章 字符串
- 第十三章:字符串(上)
- 第十三章:字符串(下)
- 第十三章字符串转换为大写
- 《Java 编程思想》--第十三章:字符串
- JAVA编程思想-第十三章 字符串
- 第十三章 字符串 格式说明符 异常补充
- 《java编程思想》第十三章 字符串
- java编程思想读书笔记----第十三章 字符串
- 第十三周字符串1
- 第十三周字符串2
- Python 总结
- linux内核tcp的定时器管理(一)
- Android简单组件之_ImageButton_CheckBox
- CxImage
- linux内核tcp的定时器管理(二)
- 第十三章 字符串
- HDU-4622-Reincarnation
- 前端UI,javascript,css框架集合
- python 静态方法与类方法
- 第十四章 类型信息
- UVA 11076 - Add Again
- linux内核中tcp连接的断开处理
- Tomcat中文编码
- 谈30岁后it人员职业发展规划