一 正则表达式
概念:正则表达式是对字符串(包括普通字符(例如,a 到 z 之间的字母)和特殊字符(称为“元字符”))操作的一种逻辑公式,就是用事先定义好的一些特定字符、及这些特定字符的组合,组成一个“规则字符串”,这个“规则字符串”用来表达对字符串的一种过滤逻辑。正则表达式是一种文本模式,模式描述在搜索文本时要匹配的一个或多个字符串。
A:字符
x 字符x(举例:a,1)
\ 反斜线字符
B:字符类
[abc] a、b 或 c(简单类)
[^abc] 任何字符,除了 a、b 或 c(否定)
[a-zA-Z] a 到 z 或 A 到 Z,两头的字母包括在内(范围)
[0-9] 0-9字符
C:预定义字符类
. 任何字符
\d 数字:[0-9]
\w 单词字符:[a-zA-Z_0-9]
D:Greedy 数量词
X? X,一次或一次也没有
X* X,零次或多次
X+ X,一次或多次
X{n} X,恰好 n 次
X{n,} X,至少 n 次
X{n,m} X,至少 n 次,但是不超过 m 次
正则表达式主要用于用户的输入是否符合规则进行判断
案例:键盘录入qq号码,校验QQ号码。
需求:
1:要求必须是5-15位数字
2:0不能开头
public class RegexDemo {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
// 键盘录入qq号码
System.out.println("请输入您的qq号码");
// 获取录入数据
String qq = sc.nextLine();
//创建方法,里面使用正则表达式实现
System.out.println(isCheck2(qq));
}
private static boolean isCheck2(String qq) {
//定义正则表达式
String reg = "[1-9][0-9]{4,14}";
return qq.matches(reg);
}
判断功能:
public boolean matches(String regex):告知此字符串是否匹配给定的正则表达式。
替换功能
String replaceAll(String regex, String replacement)
使用给定的 replacement 替换此字符串所有匹配给定的正则表达式的子字符串。
切割功能
String[] split(String regex)
根据给定正则表达式的匹配拆分此字符串。
## 二 集合
面向对象语言对事物的体现都是以对象的形式,所以为了方便对多个对象的操作,我们就需要对这多个对象进行存储。而目前为止我们学习过的可以存储多个元素的东西是数组,但是呢,数组长度固定,不能适应变化的需求,所以,Java就提供了集合类供我们使用。
集合和数组的区别:
数组:
1.长度固定
2.可以存储基本类型,也可以存储引用类型
3.存储元素类型一致
集合:
1.长度可变
2.只可以存储引用类型
3.可以存储多种类型
A:添加功能
boolean add(Object obj):往集合中添加一个元素
boolean addAll(Collection c):往集合中添加多个元素
B:删除功能
void clear():清空所有元素
boolean remove(Object o):从集合中删除一个元素
boolean removeAll(Collection c):从集合中删除另一个集合的元素
C:判断功能
boolean contains(Object o):判断集合中是否包含指定的元素
boolean containsAll(Collection c):判断集合中是否包含另一个集合的元素
boolean isEmpty():判断集合是否为空。
D:交集功能
boolean retainAll(Collection c)
E:迭代器(集合特有的遍历方式)
Iterator iterator()
F:长度功能
int size():返回集合中元素的个数
G:集合转数组
Object[]toArray():把集合转成数组,然后遍历数组,其实就相当于遍历了集合。
迭代器: Iterator iterator(),用来遍历集合中的元素
成员方法:
Object next():返回迭代的下一个元素,并移动指向的位置
boolean hasNext():判断是否有元素
迭代器是依赖于集合而存在的。所以,要想得到迭代器对象,必须先有集合对象。
迭代步骤:
A:通过集合对象获取到迭代器对象
B:通过迭代器对象的hasNext()方法判断是否有元素
C:通过迭代器对象的next()方法获取元素
List接口:
(1)List集合的元素有序(存储和取出顺序一致),元素可重复
(2)List的特有功能:
A:添加功能
void add(int index,Object obj):在指定的位置添加元素
B:删除功能
Object remove(int index):通过指定的索引删除元素,并把删除的元素返回
C:获取功能
get(int index) 返回列表中指定位置的元素。
D:替换功能
Object set(int index,Object obj)
“`