正则表达式

1.正则表达式

元字符说明
.匹配除换行符以外的任意字符
\w匹配字母和数字
\s匹配任意空白符
\d ,[0-9]匹配数字
\b匹配 单词的开始或结束
\W匹配非单词字符(非数字,非字母)
\S匹配非空白字符
\D匹配非数字
^匹配字符串的开始
[a-zA-z]匹配字母
[^0-9]匹配非数字
$匹配字符串的结束
分组:

(a(b©))

每一个括号为一个分组,分组从0开始,最外层是第0层,剩下的依次往里脱括号

String regex ="正则表达式";
String str = "";
//将正则表达式编译
Pattern p = Pattern.complie(regex);
//将字符串和正则表达式进行匹配
Matcher m = p.matcher(str);
m.find();

2.匹配模式

贪婪模式:

尽可能多的匹配,使用+符号

勉强模式

使用是最短的匹配,符号?

3.正则表达式后向引用

正则表达式提供的后向允许使用()对表达式分组之后使用$编号方式引用表达式所匹配的内容

String phone = "13854678954".replaceAll("(1\\d{2})\\d{4}(\\d{4})","$1****$2");

4.泛型

jdk从1.5开始引入了泛型机制,泛型即参数化类型(将一种数据类型作为参数传递),泛型在声明时可以指定任意的名词,但是通常会使用单个字母表示,并且见名知意

泛型使用
//泛型类:
public class Test<T,S,U> {}
//泛型接口
public interface IManager<T> {}
//泛型方法
public static <T> T showInfo(T t){}
泛型通配符

java中虽然支持多态(父类引用指向子类对象),但是对于集合操作来说并不支持:

ArrayList<Object> list = new ArrayList<String>();//编译错误
  • ?:相当于? extends object
  • ? extends T:泛型上限
  • ? surper T:泛型下限
泛型上限:

限定的是传入的数据必须是上限类型或者其子类,限定上限之后无法在增加数据(只出不进),从集合中取出的数据只能是上限类型

泛型下限:

传入的数据可以是当前类的对象也可以是其父类对象,限定下限之后可以添加数据(直进“不出”),获取的数据只能Object类型

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值