常用API-3(System类、Math类、Arrays类、正则表达式)
1.Syetem
java.lang包中,被final修饰,不可被继承。
代表程序所在系统,提供了对应的一些系统属性信息和系统操作。
不可手动创建System类的对象(因为构造函数被private修饰)。
System类中的方法都是static,直接可用类名访问。
1.1方法
currentTimeMills():当前系统时间与1970年1月1日00:00:00的毫秒差
exit():终止JVM。用来结束正在运行的Java程序
- 0:正常状态
- 其他:异常
gc():(尽最大努力)用来运行JVM中的垃圾回收器,完成内存中的垃圾清除
getProperty(String):用来获取指定键(String指定)中所记录的系统信息
arraycopy():将源数组部分元素复制到目标数组中。
- arraycopy(Object src,int srcPos,Object dest,int destPos,int length)注意索引越界问题。
注:
Object中的finalize():
- 当垃圾回收器确定不存在该对象的更多引用时,由对象的垃圾回收器调用此方法;
- 在System.gc()时调用
2.Math类
包含用于执行基本数学运算的方法的数学工具类。
其所有方法均为静态方法,一般不会创建对象。
double abs(double):绝对值
double ceil(double):比参数值大的最小整数的double值
double floor(double):比参数值小的最大整数的double值
long round(double):参数值四舍五入的结果
double random():产生一个(0.0,1.0)之间的double小数
double max(double,double):去较大者
double pow(double a,double b): a^b
属性:E、PI等也有static修饰
3.Arrays
包含用来操作数组的各种方法
若指定数组引用为null,则访问此类中的方法都会抛出异常:NullPointerException
sort():从小到大排序
binarySearch():未查到,返回-1;前提,数组需有序。
4.正则表达式
Regular Expression(regex)
它使用单个字符串来描述,用来定义匹配规则,匹配一系列符合某个句法规则的字符串。
通常被用来检索、替换那些符合某个规则的文本
String类中有一个boolean matches(String regex)
4.1Pattern类
有正则表达式的规则定义
正则表达式中明确区分大小写
4.2正则表达式的语法规则
| 字符 | 含义 |
| x | 字符x |
| \\ | 反斜线字符‘\’ |
| \t | 制表符 |
| \n | 换行符 |
| \r | 回车符 |
| [abc] | 字符a、b、c |
| [^abc] | 除了a、b或c以外的任何字符 |
| [a-zA-Z] | a到zA到Z,两头字母包括在内的任何字符 |
| [0-9] | 0到9数字,两头包括在内 |
| [a-zA-Z_0-9] | 字母或数字或下划线 |
| . | 任何字符 |
| \D | 0-9数字,等价于[0-9] |
| \W | 相当于[a-zA-Z_0-9] |
| ^ | 行的开头 |
| $ | 行的结尾 |
| x? | x出现0次或1次 |
| x* | x出现0次或多次 |
| x+ | x出现1次或多次 |
| x{n} | x出现恰好n次 |
| x{n,} | x出现至少n次 |
| x{n,m} | x出现至少n次,至多m次 |
eg.
- [0-9]{6,12}:匹配6到12位数字
- 1[34578][0-9]{9}:11位手机号,第一位为1,第二位为3,4,5,7,8中的一个,后面9位为0-9之间任意数字
- a*b:多个a或0个a后面有个b,b必须为最后一个字符
4.3字符串类中涉及正则表达式
eg.校验QQ号码
String qq="604154942";
String regex="[1-9][0-9]{4,14}";
boolean flag=qq.matches(regex);
split()
依据指定的正则表达式的匹配规则,拆分字符串
String s="18-22-40-65";
String regex="-";
String[] result=s.split(regex);
repalceAll()
将符合规则的字符串全部替换为新的字符串
String s="Hello12345World6789012";
String regex="[0-9]";
String result=s.repalceAll(regex," ");
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
