Java常用类

System类:
(1)、currentTimeMillis() 返回以毫秒为单位的当前时间
(2)、 gc() 运行垃圾回收器 只是通知jvm 进行垃圾回收,但是jvm什么时候进行不一定,通知jvm 希望进行一次垃圾回收
(3)、getenv()返回一个不能修改的当前系统环境的字符串映射视图
(4)、getenv(String name) 获取指定的环境变量值
(5)、getProperties() 确定当前的系统属性
(6)、getProperty(String key) 获取指定键指示的系统属性
(7)、identityHashCode(Objectx)返回给定对象的哈希码,该代码与默认的方法 hashCode() 返回的代码一样,无论给定对象的类是否重写 hashCode()
(8)、exit(int status) 终止当前正在运行的 Java 虚拟机,关闭当前Java程序

Runtime类:
Runtime类代表Java程序的运行时环境,可以访问JVM的相关信息
应用程序不能创建自己的Runtime实例,但可以通过getRuntime()方法获取与之关联的Runtime对象
(1)、getRuntime() 获取Java程序关联的运行时对象
(2)、availableProcessors() 向 Java 虚拟机返回可用处理器的数目
(3)、freeMemory() 返回 Java 虚拟机中的空闲内存量
(4)、totalMemory() 返回 Java 虚拟机中的内存总量
(5)、maxMemory() 返回 Java 虚拟机试图使用的最大内存量
(6)、exit(int status)通过启动虚拟机的关闭序列,终止当前正在运行的 Java 虚拟机
(7)、halt(int status) 强行终止目前正在运行的 Java 虚拟机
(8)、运行垃圾回收机制:System.gc()内部也使用这个方法Runtime.getRuntime().gc();

Sting类:
一、String类常用构造器(有△标记符号的是经常用到的构造器)
(1※)、Sting() 初始化一个新创建的 String 对象,使其表示一个空字符序列△
(2※)、String(String origianl) 初始化一个新创建的String对象,使其表示一个与参数相同的字符序列;
(3※)、String(byte[] bytes)通过使用平台的默认字符集解码指定的 byte 数组,构造一个新的 String
(4※)、String(byte[] bytes, Charsetcharset)通过使用指定的 charset 解码指定的 byte 数组,构造一个新的String
(5)、String(byte[] bytes, StringcharsetName)通过使用指定的 charset 解码指定的 byte 数组,构造一个新的String
(6)、String(byte[] bytes, intoffset, int length)通过使用平台的默认字符集解码指定的 byte 子数组,构造一新的 String
(7)、String(byte[] bytes, int offset,int length, Charset charset)通过使用指定的 charset 解码
指定的 byte 子数组,构造一个新的 String
(8)、String(byte[] bytes, int offset,int length, StringcharsetName)通过使用指定的字符集解码指定的 byte 子数组,构造一个新的String
(9※)、String(char[] value) 分配一个新的 String,使其表示字符数组参数中当前包含的字符序列
(10)、String(char[] value, int offset,int count)分配一个新的 String,它包含取自字符数组参数一个子数组的字符

二、String常用判断方法
(1)、boolean equals(Object obj): 比较字符串的内容是否相同,区分大小写
(2)、boolean equalsIgnoreCase(String str): 比较字符串的内容是否相同,忽略大小写
(3)、boolean contains(String str):判断大字符串中是否包含小字符串
(4)、boolean startsWith(String str):判断字符串是否以某个指定的字符串开头
(5)、boolean endsWith(String str):判断字符串是否以某个指定的字符串结尾
(6)、boolean isEmpty():判断字符串是否为空
最后 isEmpty() 只能判断空字符串不能判断空对象

三、String类常用的获取方法
(1)、int length():获取字符串的长度
(2)、char charAt(int index):获取指定索引位置的字符
(3)、int indexOf(int ch):返回指定字符在此字符串中的第一次出现索引
(4)、int indexOf(int ch,int fromIndex):返回在此字符串中第一次出现指定字符串处的索引,从指定的索引开始搜索
(5)、int indexOf(String str):返回指定子字符串在此字符串中第一次出现处的索引
(6)、int indexOf(String str,int fromIndex):返回指定子字符串中第一次出现处的索引,从指定的索引开始
(7)、int lastIndexOf(int ch):返回指定字符在此字符串最后一次出现处的索引
(8)、int lastIndexOf(String str,int fromIndex):返回指定字符在此字符串中最后一次出现处索引,从指定的索引处开始进行反向搜索
(9)、int lastIndexOf(String str):返回指定子字符串在此字符串中最右边出现处的索引
(10)、int lastIndexOf(int ch,int fromIndex):返回指定字符串在此字符串最后一次出现处索引,从指定的索引开始进行反向搜索
(11)、String substring(int star):从指定位置开始截取字符串,默认到末尾
(12)、String substring(int star,int end):从指定位置开始到指定位置结束截取字符串

四、String的常用转换方法
(1)、getBytes() 把字符串转换为字节数组
(2)、toCharArray() 把字符串转换为字符数组
(3)、String valueOf() 把传入的变量转成字符串
(4)、toLowerCase() 把字符串转成小写
(5)、toUpperCase() 把字符串转成大写
(6)、concat(String str) 把字符串拼接
字符串拼接的+符号是一种 语法糖

五、String类其他常用方法
(1)、replace(char old,char new): 返回一个新的字符串,它是通过用 newChar 替换此字符串中出现的所有 oldChar 得到的。
(2)、replace(String old,Stringnew):使用指定的字面值替换序列替换此字符串所有匹配字面值目标序列的子字符串
(3)、Trim():返回字符串的副本,忽略前导空白和尾部空白
(4)、compareTo():按字典顺序比较两个字符串
(5)、compareToIgnoreCase():按字典顺序比较两个字符串,不考略大小写
(6)、split():根据正则表达式的匹配拆分此字符串
(7)、限制个数 split(String regex,int limit)

六、String、StringBuffer和StringBuilder
StringBuffer构造器:
1、※StringBuffer():构造一个字符串缓冲区,其中没有字符,初始容量为16个字符
2、StringBuffer(CharSequenceseq):构造一个包含与指定字符相同的字符串缓冲区
3、※StringBuffer(String str):构造一个指定字符串内容的字符串缓冲区
4、StringBuffer(int capacity):构造一个字符串缓冲区,其实没有字符,但是包含指定的初始容量capacity
5、StringBuffer(CharSequenceseq)传字符串序列而 StringBuffer(String str)只传字符串但是用法基本一致

方法:
(1)、append() 将Boolean参数的字符串表示形式追加到序列中
(2)、capacity() 返回当前容量
(3)、chatAt() 返回char指定索引处的此序列中的值
(4)、setCharAt() 指定索引的字符
(5)、deleteChatAt() char按此顺序删除指定位置 意思就是说:删除某个位置
(6)、delete() 删除此序列的子字符串中的字符
(7)、inset()将char参数的字符串表示形式插入此序列中
(8)、reverse() 返回此字符序列的反向替换
(9)、setLength() 设置字符序列的长度
(10)、toString() 将序列转换为String(返回表示此序列中数据的字符串)

String、StringBuffer和StringBuilder的相同点:
(1)、String 类对象不可变,一旦修改String的值就是隐形的重建了一个新的对象,释放列原来的String对象
(2)、StringBuffer和StringBuffer类是通过append()、insert()、reverse()…等方法来修改值。创建的对象是可变
(3)、 StringBuffer:线程安全的;StringBuffer:非线程安全的
(4)、字符串连接String的+比StringBuffer(StringBuilder)的Append()性能差了很多
(5)、三者在执行速度方面的比较:StringBuilder > StringBuffer >> String

Anonymities类(匿名类)
匿名内部类是指没有类名的内部类,必须在创建时使用 new 语句来声明类
格式:new <类或接口>() {
// 类的主体
};
匿名的两种实现方式:
A:继承一个类,重写其方法
B:实现一个接口(可以是多个),实现其方法

BigDecimal类
为了能精确表示、计算浮点数,Java提供了BigDecimal类,该类提供了大量的构造器用于创建BigDecimal对象
为了解决Java中浮点型的精度丢失问题,在一些需要高精度计算问题,比如金融里面的钱计算,推荐使用BigDecimal类
不推荐使用构造器来转浮点型数据,会导致精度损失,如果要转换浮点型数据,推荐使用BigDecimal.valueOf(double)或者 使用形参为字符串类型的构造器
常用方法:
(1)、valueOf(long val) 将 long 值转换为具有零标度的BigDecimal
(2)、toString()返回此 BigDecimal 的字符串表示形式,如果需要指数,则使用科学记数法
加 add()、减 subtract()、乘 multiply()、除 divide()
abs就是取绝对值、pow()次方

Date类
Java提供了Date类来处理日期、时间,Date对象既包含日期,也包含时间
构造器
Date() 分配 Date 对象并初始化此对象,以表示分配它的时间(精确到毫秒)
例子:Date date = new Date();
System.out.println(date);

Date(long date) 分配 Date 对象并初始化此对象,以表示自从标准基准时间(称为“历元
(epoch)”,即 1970 年 1 月 1 日 00:00:00 GMT)以来的指定毫秒数
例子:Date date1 = new Date(System.currentTimeMillis() - 10000L);
System.out.println(date1);

方法:
(1)、after()测试此日期是否在指定日期之后
(2)、before()测试此日期是否在指定日期之前
(3)、compareTo()比较两个日期的顺序
(4)、clone()返回此对象的副本
(5)、equals()比较两个日期的相等性
(6※)、getTime()返回自 1970 年 1 月 1 日 00:00:00 GMT 以来此 Date 对象表示的毫秒数
(7)、setTime() 设置此 Date 对象,以表示 1970 年 1 月 1 日 00:00:00GMT 以后 time 毫秒的时间点
使用SimpleDateFormat类可以对 Date 和 String 相互转换
※※※
G 年代标记符、y 年、 M 月、d 日、 m 分、 s 秒 、S 毫秒、 E 星期、z 时区
h 时 在上午或下午(1~12)
H 时 在一天中(0~23)
D 一年中的第几天
F 一个月中的第几个星期几
w 一年中第几个星期
W 一个月中第几个星期
a 上午/下午 标记符
k 时 在一天中(1~24)
K 时 在上午或者下午(0~11)

Calendar类
方法:
(1)、getInstance() 使用默认时区和语言环境获得一个日历
(2)、setTime() 使用给定的 Date 设置此 Calendar 的时间
(3)、 get() 返回给定日历字段的值
(4)、set() 将给定的日历字段设置为给定值。该方法有多个重载
(5※)、add() 根据日历的规则,为给定的日历字段添加或减去指定的时间量
(6)、roll() 向指定日历字段添加指定(有符号的)时间量,不更改更大的字段
(7)、getTime() 返回一个表示此 Calendar 时间值(从历元至现在的毫秒偏移量)的 Date 对象

年份:Calendar.YEAR 、 月份:Calendar.MONTH 、 日期:Calendar.DATE 日期 、和上面的字段意义完全相同 :Calendar.DAY_OF_MONTH 、 12小时制的小时:Calendar.HOUR 、 24小时制的小时: Calendar.HOUR_OF_DAY 、分钟:Calendar.MINUTE 、 秒:Calendar.SECOND 、 星期几: Calendar.DAY_OF_WEEK

Math类
1、Math类是一个工具类,构造器被private的,无法创建Math类对象。
2、Math类中的所有方法都是静态方法(类方法),可以直接通过类名来调用它们
Math提供了两个类变量::PI(圆周率)和E(自然对数的底数)
一、三角运算
(1※)、toDegrees()将弧度转换为角度
System.out.println(“Math.toDegrees(1.57)=”+Math.toDegrees(1.57));
(2※)、toRadians()将角度转换为弧度
System.out.println(“Math.toRadians(90)=”+Math.toRadians(90));
(3※)、cos()三角余弦
System.out.println(“Math.cos(1.57)=”+Math.cos(1.57));
(4※)、sin()正弦
System.out.println(“Math.sin(1.57)=”+Math.sin(1.57));
(5※)、tan()三角正切
System.out.println(“Math.tan(0.8)=”+Math.tan(0.8));
二、取整运算
(1※)、floor()取整,返回小于目标数的最大整数
System.out.println(“Math.floor(-1.2)=”+Math.floor(-1.2));
(2※)、ceil()取整,返回大于目标数的最小整数
System.out.println(“Math.ceil(1.2)=”+Math.ceil(1.2));
(3※)、round()四舍五入,取整数
System.out.println(“Math.round(-2.6=)”+Math.round(-2.6));

三、乘方、开方、指数运算
(1※)、sqrt()平方根
System.out.println(“Math.sqrt(9)=”+Math.sqrt(9));
(2※)、cbrt()立方根
System.out.println(“Math.cbrt(27)=”+Math.cbrt(27));
(3※)、pow()乘方
System.out.println(“Math.pow(3,2)=”+Math.pow(3, 2));

四、符号相关的方法
abs() 绝对值※
System.out.println(“Math.abs(-4.5)=”+Math.abs(-4.5));

五、大小比较相关的方法
(1※)、max()最大值
System.out.println(“Math.max(2.3,4.5)=”+Math.max(2.3, 4.5));
(2※)、min()最小值
System.out.println(“Math.min(1.2,4.5)=”+Math.min(1.2, 4.5));

Random类
Random类是一个伪随机数的类,其产生的随机数是根据种子和顺序决定的;具有更好的线程安全性

构造器:
(1)、Random() 创建一个新的随机数生成器
(2)、Random(long seed) 使用单个 long 种子创建一个新的随机数生成器

方法:
(1)、nextBoolean() 返回下一个伪随机数,它是取自此随机数生成器序列的均匀分布的 boolean 值
(2)、nextBytes(byte[]bytes) 生成随机字节并将其置于用户提供的 byte 数组中
(3)、nextFloat() 返回下一个伪随机数,它是取自此随机数生成器序列的、在 0.0和 1.0 之间均匀分布的 float 值
(4)、nextDouble() 返回下一个伪随机数,它是取自此随机数生成器序列的、在 0.0和 1.0 之间均匀分布的 double 值
(5)、nextLong()返回下一个伪随机数,它是取自此随机数生成器序列的均匀分布的 long 值
(6)、nextInt()返回下一个伪随机数,它是此随机数生成器的序列中均匀分布的 int 值
(7)、nextInt(int n)返回一个伪随机数,它是取自此随机数生成器序列的、在 0(包括)和(不包括)指定值之间均匀分布的 int 值

注意:(1)、只要两个Random对象的种子相同,而且方法的调用顺序也相同,产生的随机数相同
(2)、Random产生的数字并不是真正的随机的,而是一种伪随机

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值