TCP协议进行通信的两个应用进程:客户端、服务端。

在连接中可进行大数据量的传输

传输完毕,需释放已建立的连接,效率低

UDP协议:

将数据、源、目的封装成数据包,不需要建立连接

每个数据报的大小限制在64K内

发送不管对方是否准备好,接收方收到也不确认,故是不可靠的

可以广播发送

发送数据结束时无需释放资源,开销小,速度快

正则表达式

正则表达式:定义了字符串的匹配模式可以用来搜索,编辑或处理文本,并不仅限于某一种语言,但是每种语言中有细微的差别

?JDK1.4 推出的 java.util.regex 包,很好的支持了正则表达式

?常用语法:

?/转义符,把有意义的字符转为无意义的字符,但java中/也是转义符,所以在java中编写正则表达式的时候,

?* 需要转义符的时候要写两个//

?* 字符取值范围相关

?[abc]:表示可能是a,可能是b,也可能是c(abc中的任意一个)

?[^abc]:表示不是abc中的任何一个

?[a-zA-Z]:表示是大小写字母,[a-z] 小写字母 , [A-Z] 大写字母 [0-9] 数字0-9?

?*a-zA-Z0-9] : 表示是数字或字母

?简洁表示:

?. :匹配任意字符

?/d :表示数字,等同于[0-9]

?/D : 表示非数字 等同于 [^0-9]

?/s : 表示由空字符组成, [/t/n/r/x/f]

?/S : 表示非空字符组成

?/w : 表示由字母数字下划线组成 ?[a-zA-Z0-9_]

?/W : 表示非字母数字下划线 ?[^a-zA-Z0-9_]

?表示数量:

?? : 表示出现0次或1次

?+ : 表示1次或多次, 大于等于1

?* : 任意次数(0~N)

?{n} : 表示出现n次?

?{n,m} : 表示出现n次到m次

?{n,} : 表示出现n及以上 >=n

?() : 把他们看做一个整体

?| 或,a|b ,a和b都可以匹配

?^ : 以什么什么打头 , 但是 用在[^xxx] 就表示取反

?$ : 以什么什么结尾

?校验非汉字:

?[^/u4e00-/u9fa5]

?Pattern : 创建正则表达式对象,能做一些基本的简单操作

?三大功能 :?

?验证 : boolean matchers(String regex);

?拆分 : String[] split(String regex);

?替换 : String replaceAll(String regex,String replacement);

Pattern类

用于创建一个正则表达式,也可以说创建一个匹配模式,它的构造方法是私有的,不可以直接创建

可以通过Pattern.complie(String regex)创建一个正则表达式

只能做一些简单的匹配操作

Matcher类

构造方法也是私有的,不能随意创建,只能通过Pattern.matcher(CharSequence input)方法得到该类的实例 Matcher m = p.matcher("aaaaab");

支持便捷强大的正则匹配操作,包括分组、多次匹配支持

Matcher三大方法

Matcher.matches():对整个字符串进行匹配,只有整个字符串都匹配了才返回true

Matcher.lookingAt():对前面的字符串进行匹配,只有匹配到的字符串在最前面才返回true

总结

阿里伤透我心,疯狂复习刷题,终于喜提offer 哈哈~好啦,不闲扯了,文章开头说要免费给大家分享我的复习资料,下面就给大家展示一下——点击这里免费获取我的复习刷题宝典

image

1、JAVA面试核心知识整理(PDF):包含JVMJAVA集合JAVA多线程并发,JAVA基础,Spring原理微服务,Netty与RPC,网络,日志,ZookeeperKafkaRabbitMQ,Hbase,MongoDB,Cassandra,设计模式负载均衡数据库一致性哈希JAVA算法数据结构,加密算法,分布式缓存,Hadoop,Spark,Storm,YARN,机器学习,云计算共30个章节。

image

2、Redis学习笔记及学习思维脑图

image

3、数据面试必备20题+数据库性能优化的21个最佳实践

image