正则表达式:
正则表达式是一种字符串,是一种有规则的字符串
[]代表单个字符
[abc] :只有abc符合
[^abc] :取反除了adc字符都可以
[a-zA-Z] :a到z,或者A到Z,包括头尾
[a-d[m-p]] :a到d,或者m到p
[a-z&&[def]] :只有交集可以,def
[a-z&&[^bc]] :只有交集可以,a-z除去bc都可以
[a-z&&[^m-p]] :只有交集可以,a-z除了m-p都可以
预定字符类:
. :代表任意一个字符,几个.代表几个任意字符
\\. :表示验证
\\d :代表数字0-9才可以
\\D :除了0-9都可以
\\s :水平制表符或一个空格可以
\\S :除了空白字符{空格,tab}
\\w :单词字符才可以包括_
\\W :非单词字符
Greedy数量词:
[abc]? :一次或者一次也没有返回真
[abc]* :0次多次返回true
[abc]+ :1次或者多次返回true
[abc]{5} :恰好5次
[abc]{5,} :至少5次
[abc]{5,10} :至少5次但是不能超过10次
组:
(Anything)
\\1 +: 1组出现1次或多次
$1: 1组
字符串通过正则表达式切割:
split(正则表达式):字符串从正则表达式开始切割
字符串通过正则表达式替换:
replaceAll(正则表达式,替换内容)
模式类pattern和匹配器类Matchers用正则表达式来完成匹配和查找
String regex = "1[3578]\\d{9}";
pattern p = pattern.compile(正则表达式);
Matcher m = p.Matcher(字符串);
Math类:
(Math.Pi) :圆周率
Math.abs(int) :绝对值
ceil天花板-->向上取整,但是结果是double型
Math.ceil(int)
floor地板-->向下取整,但是结果是double型
Math.floor(int)
获取两个值中的最大值
Math.max(int,int)
前面的数是底数,后面的数是指数
Math.pow(double,double)
生成0.0到1.0之前的随机小数包括0.0不包括1.0
Math.random()
四舍五入
Math.round(double)
开平方
Math.sqrt(根号)
Random:
new Random()
new Random(int)
nextInt() int范围随机数
nextInt(100) 1-100的随机数,取0不取100,需要100后面+1
(int)(Math.random()*100+1)
System类:
System.gc() :垃圾回收站
System.exit(0) :退出java虚拟机.
System.currentTimeMillis() :获取计算机到1970-1-1的毫秒
System.arraycopy(原数组,角标,新数组,角标,原数组拷贝多少个元素)
System 不可以被实例化
了解_BigInteger类:
大型整数
BigInterger bi1 = newBigInterger("100");
BigInterger bi2 = newBigInterger("2");
bi1.add(bi2) 加
bi1.subtract(bi2) 减
bi1.multiply(bi2) 乘
bi1.divide(bi2) 除
了解_BigDecimal类:
精确小数
BigDecimal bd1 = new BigDecimal("2.0");
BigDecimal bd2 = new BigDecimal("1.1");
Data类:
表示特定的瞬间精确到毫秒
Data d = new Data()
Data d2 = new Data(0)
成员方法:
getTime();
setTime(long data);
打印时间Data d = new Data()
SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日 HH:mm:ss")
asd.fromat(d)
将时间字符串转化成日期对象:
String str = "2000年08月08日08:08:08"
SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日 HH:mm:ss")
Date d = sdf.parse(str) 将时间字符串转换成日期对象
control+e 抛出异常
|
|