java复习笔记(3)
2026/6/1 1:41:08 网站建设 项目流程

一、String 字符串核心知识点

String 是Java中最常用的引用类型之一,也是笔试高频考点。

1. 基础特性

- 不可变性:String 对象创建后内容无法修改,所有“修改”操作(拼接、替换)本质上是创建新对象。

- 常量池复用:直接用双引号创建的字符串会存入常量池,减少内存开销。

- 比较方式: == 比较内存地址, equals() 比较内容;空字符串 "" (有效对象,长度为0)与 null (无引用对象,调用方法会报错)有本质区别。

2. 常用API汇总

方法 核心作用

length() 获取字符串长度

charAt(int index) 获取指定索引的字符

contains(String s) 判断是否包含指定内容

indexOf(String s) 查找内容第一次出现的索引(找不到返回-1)

lastIndexOf(String s) 查找内容最后一次出现的索引

substring(int begin, int end) 截取字符串(左闭右开区间)

startsWith()/endsWith() 判断字符串是否以指定内容开头/结尾

split(String regex) 按规则分割字符串,返回数组

replaceAll(String regex, String replacement) 支持正则的批量替换

toUpperCase()/toLowerCase() 大小写转换

trim() 去除首尾空白字符

3. 实战场景

典型应用:从结构化文本中提取数据(如书籍信息中的价格、页码)。通过 indexOf 定位关键词位置,再用 substring 截取目标内容,最后转换为数值类型进行判断与计算。

二、正则表达式与文本处理

正则表达式是处理复杂文本的利器,Java中通过 Pattern 和 Matcher 实现匹配与替换。

1. 核心使用流程

1. 定义正则规则(如IP地址、手机号匹配)

2. 用 Pattern.compile() 编译正则表达式,生成模式对象

3. 创建 Matcher 匹配器,关联目标字符串

4. 通过 find() 查找匹配内容, group() 获取结果, replaceAll() 批量替换

2. 文本分割进阶

- split() :按正则分割字符串,适合简单场景

- StringTokenizer :可指定分隔符,处理结构化文本(如商品信息中提取所有价格并求和)

三、日期时间处理( java.time 包)

Java 8+ 提供的新日期API,解决了旧版 Date / Calendar 的诸多问题。

1. 核心类与常用操作

- LocalDate :表示本地日期(年-月-日),不可变对象

- 日期解析:通过 split() 分割输入字符串,解析为年、月、日后用 LocalDate.of() 创建对象

- 日期比较与计算:- isAfter() / isBefore() :判断日期先后

- ChronoUnit.DAYS.between() :计算两个日期的天数差

- Math.abs() :保证日期差结果为正,避免正负号影响

四、大数运算: BigInteger

当整数超出 long 类型范围时,使用 BigInteger 处理超大整数运算。

1. 基础特性

- 必须通过字符串构造对象,避免数值溢出

- 提供专用运算方法,不依赖基本数据类型运算符

2. 常用运算方法

方法 运算功能

add(BigInteger val) 加法

subtract(BigInteger val) 减法

multiply(BigInteger val) 乘法

divide(BigInteger val) 除法

remainder(BigInteger val) 取余

compareTo(BigInteger val) 比较大小(返回-1/0/1)

3. 实战场景

处理超大整数的四则运算、因数判断等数学问题,适合算法题或需要高精度计算的场景。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询