SCJP考试复习:Java Properties与正则表达式解析
需积分: 4 178 浏览量
更新于2024-10-08
收藏 75KB DOC 举报
"SCJP学习笔记.doc 是一份关于准备SCJP(Sun Certified Programmer for the Java Platform)考试的学习资料,包含了核心Java应用的知识点,特别是`java.util.Properties`的使用和正则表达式在Java中的应用。文档中通过示例代码进行了解释和分析。"
在Java编程中,`java.util.Properties`类是用于处理配置文件的关键工具,它继承自`Hashtable`。以下是一些关于`Properties`类的核心知识点:
1. 加载配置文件:创建`Properties`对象后,可以通过`InputStream`加载配置文件。例如:
```java
Properties pp = new Properties();
InputStream is = new FileInputStream("config.properties");
pp.load(is); // 将文件中的设置加载到pp中
is.close(); // 加载完成后关闭文件流
```
这里的`load(is)`方法读取文件内容并将其解析为键值对,存储在`Properties`对象中。
2. 保存配置文件:相反,你可以使用`store(OutputStream out, String comments)`方法将`Properties`对象的内容写入到一个文件中。
```java
OutputStream os = new FileOutputStream("config.properties");
pp.store(os, "Comment for the properties file"); // 存储配置
os.close();
```
关于正则表达式在Java中的应用,主要涉及到`java.util.regex`包中的`Pattern`和`Matcher`类:
1. 编译正则表达式:首先,你需要使用`Pattern.compile(String regex)`方法编译一个正则表达式,创建`Pattern`对象。
```java
String patternString = "^13[0-9]\\d{8}$";
Pattern p = Pattern.compile(patternString);
```
这个例子中,`^13[0-9]\\d{8}$`表示匹配以13开头,中间为0-9数字,长度为11的手机号码。
2. 匹配与查找:然后,使用`Pattern`对象的`matcher(String input)`方法,将编译好的正则表达式应用于目标字符串,得到`Matcher`对象。
```java
Matcher m = p.matcher("my phoneNumber is 13427696543 and 125001323874391283743");
```
3. 搜索与替换:`Matcher`提供了多种方法来搜索和操作匹配的结果,如`find()`方法查找匹配的子串,`start()`和`end()`方法获取匹配子串的起始和结束索引。此外,还可以使用`replaceAll(String replacement)`或`replaceFirst(String replacement)`进行替换操作。
在给定的代码片段中,`while(m.find())`循环会查找所有符合正则表达式的手机号码,并打印它们的开始和结束索引。
SCJP认证考试旨在测试开发者对Java SE平台的基础知识,包括类、接口、异常处理、输入/输出、集合框架、多线程、网络编程、I/O流等。`Properties`和正则表达式是其中两个重要的知识点,理解和掌握它们对于通过考试和日常开发工作都至关重要。
2008-10-26 上传
2009-10-02 上传
2008-07-08 上传
2008-03-07 上传
2007-08-07 上传
2007-03-29 上传
2024-06-30 上传
2022-09-14 上传
2008-02-25 上传
zerolin1988
- 粉丝: 0
- 资源: 2
最新资源
- Angular实现MarcHayek简历展示应用教程
- Crossbow Spot最新更新 - 获取Chrome扩展新闻
- 量子管道网络优化与Python实现
- Debian系统中APT缓存维护工具的使用方法与实践
- Python模块AccessControl的Windows64位安装文件介绍
- 掌握最新*** Fisher资讯,使用Google Chrome扩展
- Ember应用程序开发流程与环境配置指南
- EZPCOpenSDK_v5.1.2_build***版本更新详情
- Postcode-Finder:利用JavaScript和Google Geocode API实现
- AWS商业交易监控器:航线行为分析与营销策略制定
- AccessControl-4.0b6压缩包详细使用教程
- Python编程实践与技巧汇总
- 使用Sikuli和Python打造颜色求解器项目
- .Net基础视频教程:掌握GDI绘图技术
- 深入理解数据结构与JavaScript实践项目
- 双子座在线裁判系统:提高编程竞赛效率