Java编程思想-13字符串
来源:互联网 发布:移动硬盘监控软件 编辑:程序博客网 时间:2024/05/21 10:54
一、字符串
1、String:不可变字符序列
String对象一经初始化,就不能被改变
String变更的处理机制:生成新的String对象-->赋值-->返回新对象的引用
编译器会适当使用StringBuilder优化性能2、StringBuilder:可变字符序列
简单的字符串操作,用String
频繁的字符串操作,用StringBuilder3、方法
字符串方法会频繁使用,详情见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.Pattern3、捕获组
捕获组:是用括号划分的正则表达式,可以根据组的编号引用捕获组\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); }
0 0
- 13字符串-Java编程思想
- Java编程思想-13字符串
- 读《java编程思想》 字符串(13)
- Java 编程思想13章--字符串
- JAVA编程思想---字符串操作
- java编程思想-字符串
- Java编程思想之字符串
- Java编程思想之字符串
- Java编程思想_字符串
- 字符串--来自《Java编程思想第四版》第13章
- 《Java编程思想第四版》笔记---13章 字符串
- 《Java 编程思想》第13章 字符串 笔记
- java编程思想学习_第13章_字符串
- 读书笔记 JAVA编程思想 第13章 字符串
- Java编程思想读书笔记——字符串
- 《Java 编程思想》--第十三章:字符串
- java编程思想笔记--字符串部分一
- java编程思想笔记--字符串部分二
- Python读取PDF文件
- Windows API 空壳应用程序
- 5-1 还原二叉树 (25分)
- 操作系统实验五之线程生成Fibonacci数列
- 5-2 根据后序和中序遍历输出先序遍历 (25分)
- Java编程思想-13字符串
- 5-3 树的遍历 (25分)
- SSM搭建总结
- 微信小程序循环赋值坑
- 使用脚本拷贝官方的 Material Design 图标到自己的 Android App 项目
- Springboot @RequestBody + Retrofit @Body 之实体类字段含有日期Date类型的提交方式
- Hibernate_映射_关联关系_一对一映射3_基于主键的方式
- 【LeetCode】2.Add Two Numbers两个单链表相加
- gcc LD_LIBRARY_PATH和LIBRARY_PATH区别