《thinking in java》学习笔记13
来源:互联网 发布:fm球员数据库 编辑:程序博客网 时间:2024/04/29 23:22
字符串
不可变String
- String是不可变的,每个看似修改String值得方法实际上都是创建了一个新的String对象
- 当把String对象作为方法的参数时都会复制一份引用
重载“+”与StringBuilder
- “+”可以用来连接String
- 编译器会自动使用StringBuilder,但是显式的创建StringBuilder可以预先为其指定大小,避免多次重新分配缓存
- StringBuilder更快,StringBuffer是线程安全的,但是开销更大
无意识的递归
- 打印内存对象的地址应该调用Object.toString()
String上的操作
格式化输出
- format方法模仿c的printf(),format()和printf()是等价的
- 所有新的格式化功能由java.util.Formatter类处理
- 格式化说明符%[argument_index$][flags][width][.precision]conversion,分别表示参数在参数列表中的位置,修改输出格式的字符集,最小尺寸,最大尺寸,类型。
- precision用于字符表示最大长度。浮点数比哦啊是小数点后位数,默认为六位,多则舍入,少则补零。整数抛出异常
- 默认情况下是右对齐,可以添加“-”标志改变对齐方向
- 类型:十进制整数d unicode字符c boolean值b 字符串s 十进制浮点数f 科学计数浮点数e 十六进制整数x十六进制散列码h 百分号%
- String.format()是一个静态方法,返回一个String对象
扫描输入
- Scanner构造器可以接受任何类型的输入对象
- 普通的next方法返回下一个String
- 默认情况下根据空白字符对输入进行分词,但是可以用正则表达式指定自己的定界符
- 可以使用自定义的正则表达式进行扫描,当next配合正则表达式使用时,将找到下一个匹配该模式的输入部分,调用match方法可以获得匹配结果。
- 它仅针对下一个输入分词进行匹配,如果正则表达式中有定界符,那么不可能匹配成功
0 0
- 《thinking in java》学习笔记13
- 【1】.thinking in java 学习笔记
- 《thinking in java》学习笔记1
- 《thinking in java》学习笔记2
- 《thinking in java》学习笔记3
- 《thinking in java》学习笔记4
- 《thinking in java》学习笔记5
- 《thinking in java》学习笔记6
- 《thinking in java》学习笔记7
- 《thinking in java》学习笔记8
- 《thinking in java》学习笔记10
- 《thinking in java》学习笔记11
- 《thinking in java》学习笔记12
- 《thinking in java》学习笔记16
- 《thinking in java》学习笔记14
- 《thinking in java》学习笔记15
- 《thinking in java》学习笔记18
- 《thinking in java》学习笔记19
- Hdu5441 2015长春赛区网络赛
- 递归导致内存溢出
- 《thinking in java》学习笔记11
- image
- 《thinking in java》学习笔记12
- 《thinking in java》学习笔记13
- 《thinking in java》学习笔记16
- 《thinking in java》学习笔记14
- 《thinking in java》学习笔记15
- 《thinking in java》学习笔记18
- 《thinking in java》学习笔记19
- 如何写批处理文件(转)
- TCP/IP连接服务器备忘
- hdu3768最大独立集