Java学习4-2_常用工具类

常用库类

一、 java.util.Objects

1 Object方法

1.1 equals

equals方法是判断两个对象是否相等,并且它是空安全(null safe)的。

在比较两个对象的时候,Object.equals方法容易抛出空指针异常。

源码如下

public static boolean equals(Object a, Object b) {
        return (a == b) || (a != null && a.equals(b));
    }
1.2 deepEquals

验证两个数组是否深层相等(deep equality),该方法在数组比较中尤其有用。

1.3 hash(Object… values)

为输入值序列生成散列码(hash code)。

1.4 toString(Object o)

如果参数不为 null 则返回调用 toString 的结果,否则返回 null

1.5 requireNonNull(T obj)

如果参数不为 null 则返回 T ,否则抛出 NullPointerException。

二、java.lang.Math

常用方法

  1. Math.round(),返回最接近参数的 int,它表示"四舍五入"
  2. Math.rint(),返回最接近参数并等于某一整数的 double 值,如果有2个数同样接近,则返回偶数的那个
  3. Math.floor() ,返回最大的(最接近正无穷大)double 值,该值小于等于参数,并等于某个整数
  4. Math.ceil(),返回最小的(最接近负无穷大)double 值,该值大于等于参数,并等于某个整数
  5. Math.cbrt(),返回 double 值的立方根
  6. Math.sqrt(),返回正确舍入的 double 值的正平方根
  7. Math.pow(),返回第一个参数的第二个参数次幂的值
  8. Math.max(),返回两个 double 值中较大的一个
  9. Math.min(),返回两个 double 值中较小的一个
  10. Math.abs(),求取绝对值

三、java.util.Arrays

Arrays类包含用来处理数组的各种方法,而且每个方法基本上都是静态方法,能直接通过类名Arrays调用。

  1. asList(), 作用是返回由指定数组支持的固定大小列表, 这个方法返回的 ArrayList 不是我们常用的集合类 java.util.ArrayList。这里的 ArrayList 是 Arrays 的一个内部类 java.util.Arrays.ArrayList
  2. sort(),该方法是用于数组排序,在 Arrays 类中有该方法的一系列重载方法,能对7种基本数据类型,包括 byte,char,double,float,int,long,short 等都能进行排序,还有 Object 类型(实现了Comparable接口),以及比较器 Comparator。
  3. binarySearch(),用二分法查找数组中的某个元素。该方法和 sort 方法一样,适用于各种基本数据类型以及对象。
  4. copyOf(), 拷贝数组元素。底层采用 System.arraycopy() 实现,这是一个native方法。
  5. fill(), 该系列方法用于给数组赋值,并能指定某个范围赋值。

四、java.math.BigDecimal

Java在java.math包中提供的API类BigDecimal,用来对超过16位有效位的数进行精确的运算。双精度浮点型变量double可以处理16位有效数,但在实际应用中,可能需要对更大或者更小的数进行运算和处理。一般情况下,对于那些不需要准确计算精度的数字,我们可以直接使用Float和Double处理,但是Double.valueOf(String) 和Float.valueOf(String)会丢失精度。所以开发中,如果我们需要精确计算的结果,则必须使用BigDecimal类

  1. abs(),返回BigDecimal值的绝对值BigDecimal。
  2. abs(MathContext mc),返回BigDecimal值的绝对值的BigDecimal,并根据上下文设置进行舍入。
  3. add(BigDecimal augend),返回值为(this + augend),且其比例为的值max(this.scale(), augend.scale())。
  4. add(BigDecimal augend, MathContext mc),返回值为(this + augend),根据上下文设置进行舍入。
  5. byteValueExact(),将其转换BigDecimal为byte,并且检查丢失的信息。
  6. compareTo(BigDecimal val), 将BigDecimal与指定的val进行比较。
  7. divide(BigDecimal divisor),返回值为(this / divisor),其首选比例为(this.scale() - divisor.scale()); 如果无法表示确切的商(因为它具有非终止的十进制扩展),ArithmeticException则抛出一个。

五、java.util.Date

标准时间:1970年1月1日0时0分0秒。每个地区的标准时间是不一样的,因为存在时区的差异新,中国属于东八区,因此标准时间是1970年1月1日8时0分0秒

  1. Date(),用于无参的方式构造对象,默认使用当前的系统时间。
  2. Date(long date),根据参数指定的毫秒数来构造对象,其中参数为距离1970年1月1日0时0分0秒的毫秒数(与File类搭配使用)
  3. getTime(), 获取当前对象距离1970年1月1日0时0分0秒的毫秒数
  4. setTime(), 用于设置当前对象的时间为参数指定的毫秒数,距离标准时间

六、java.text.DateFormat

此类用于格式化时间输出

  1. parse(),解析字符串的文本,返回 Date。
  2. format(),将一个 Date 格式化为日期/时间字符串。

七、java.util.Calendar

用于描述日期信息的,该类中很多方法取代了Date类的过时方法。该类是一个抽象类,不能实例化对象。

  1. getInstance(),用户获取当前类的引用
  2. set(int year, int month, int date, int hourOfDay, int minute, int second),根据参数设置年月日时分秒
  3. getTime(), 用于将Calendar类型转换为Date类型并返回。

八、java.lang.System

提供的设施包括标准输入,标准输出和错误输出流; 访问外部定义的属性和环境变量; 加载文件和库的方法; 以及用于快速复制阵列的一部分的实用方法

  1. 字段

    修饰符和类型领域和描述
    public final static PrintStreamerr “标准”错误输出流。
    public final static InputStreamin “标准”输入流。
    public final static PrintStreamout “标准”输出流。
  2. 方法

  3. currentTimeMillis(),返回正在运行的Java虚拟机的高分辨率时间源的当前值,以纳秒为单位

  4. nanoTime(),将指定源数组中的数组从指定位置开始复制到目标数组的指定位置

  5. arraycopy(Object src, int srcPos, Object dest, int destPos, int length),

  6. lineSeparator(),返回依赖于系统的行分隔符字符串。

  7. getProperties(),确定当前系统属性

  8. 相关属性

    相关价值的描述
    java.version JavaRuntime Environment版本
    java.vendorJava运行时环境供应商
    java.vendor.urlJava供应商URL
    java.homeJava安装目录
    java.vm.specification.versionJava虚拟机规范版本
    java.vm.specification.vendorJava虚拟机规范供应商
    java.vm.specification.nameJava虚拟机规范名称
    java.vm.versionJava虚拟机实现版本
    java.vm.vendorJava虚拟机实现供应商
    java.vm.name](http://java.vm.name/)Java虚拟机实现名称
    java.specification.versionJava运行时环境规范版本
    java.specification.vendorJava运行时环境规范供应商
    java.specification.nameJava运行时环境规范名称
    java.class.versionJava类格式版本号
    java.class.pathJava类路径
    java.library.path加载库时要搜索的路径列表
    java.io.tmpdir默认临时文件路径
    java.compiler要使用的JIT编译器的名称
    java.ext.dirs扩展目录或目录的路径 已过时。 可以在将来的版本中删除此属性以及实现它的机制。
    os.name操作系统名称
    os.arch操作系统架构
    os.version操作系统版本
    file.separator文件分隔符(UNIX上的“/”)
    path.separator路径分隔符(UNIX上的“:”)
    line.separator行分隔符(UNIX上为“\ n”)
    user.name用户的帐户名称
    user.home用户的主目录
    user.dir用户当前的工作目录

九、String

常用方法

SN(序号)方法描述
1char charAt(int index),返回指定索引处的 char 值。
2int compareTo(Object o),把这个字符串和另一个对象比较。
3int compareTo(String anotherString),按字典顺序比较两个字符串。
4int compareToIgnoreCase(String str),按字典顺序比较两个字符串,不考虑大小写。
5String concat(String str),将指定字符串连接到此字符串的结尾。
6boolean contentEquals(StringBuffer sb),当且仅当字符串与指定的StringBuffer有相同顺序的字符时候返回真。
7static String copyValueOf(char data),返回指定数组中表示该字符序列的 String。
8static String copyValueOf(char data, int offset, int count),返回指定数组中表示该字符序列的 String。
9boolean endsWith(String suffix),测试此字符串是否以指定的后缀结束。
10boolean equals(Object anObject),将此字符串与指定的对象比较。
11boolean equalsIgnoreCase(String anotherString),将此 String 与另一个 String 比较,不考虑大小写。
12byte getBytes(),使用平台的默认字符集将此 String 编码为 byte 序列,并将结果存储到一个新的 byte 数组中。
13byte getBytes(String charsetName),使用指定的字符集将此 String 编码为 byte 序列,并将结果存储到一个新的 byte 数组中。
14void getChars(int srcBegin, int srcEnd, char dst, int dstBegin),将字符从此字符串复制到目标字符数组。
15int hashCode(),返回此字符串的哈希码。
16int indexOf(int ch),返回指定字符在此字符串中第一次出现处的索引。
17int indexOf(int ch, int fromIndex),返回在此字符串中第一次出现指定字符处的索引,从指定的索引开始搜索。
18int indexOf(String str),返回指定子字符串在此字符串中第一次出现处的索引。
19int indexOf(String str, int fromIndex),返回指定子字符串在此字符串中第一次出现处的索引,从指定的索引开始。
20String intern(),返回字符串对象的规范化表示形式。
21int lastIndexOf(int ch),返回指定字符在此字符串中最后一次出现处的索引。
22int lastIndexOf(int ch, int fromIndex),返回指定字符在此字符串中最后一次出现处的索引,从指定的索引处开始进行反向搜索。
23int lastIndexOf(String str),返回指定子字符串在此字符串中最右边出现处的索引。
24int lastIndexOf(String str, int fromIndex), 返回指定子字符串在此字符串中最后一次出现处的索引,从指定的索引开始反向搜索。
25int length(),返回此字符串的长度。
26boolean matches(String regex),告知此字符串是否匹配给定的正则表达式。
27boolean regionMatches(boolean ignoreCase, int toffset, String other, int ooffset, int len),测试两个字符串区域是否相等。
28boolean regionMatches(int toffset, String other, int ooffset, int len),测试两个字符串区域是否相等。
29String replace(char oldChar, char newChar),返回一个新的字符串,它是通过用 newChar 替换此字符串中出现的所有 oldChar 得到的。
30String replaceAll(String regex, String replacement),使用给定的 replacement 替换此字符串所有匹配给定的正则表达式的子字符串。
31String replaceFirst(String regex, String replacement),使用给定的 replacement 替换此字符串匹配给定的正则表达式的第一个子字符串。
32String split(String regex),根据给定正则表达式的匹配拆分此字符串。
33String split(String regex, int limit),根据匹配给定的正则表达式来拆分此字符串。
34boolean startsWith(String prefix), 测试此字符串是否以指定的前缀开始。
35boolean startsWith(String prefix, int toffset),测试此字符串从指定索引开始的子字符串是否以指定前缀开始。
36CharSequence subSequence(int beginIndex, int endIndex),返回一个新的字符序列,它是此序列的一个子序列。
37String substring(int beginIndex),返回一个新的字符串,它是此字符串的一个子字符串。
38String substring(int beginIndex, int endIndex),返回一个新字符串,它是此字符串的一个子字符串。
39toCharArray(),将此字符串转换为一个新的字符数组。
40String toLowerCase(),使用默认语言环境的规则将此 String 中的所有字符都转换为小写。
41String toLowerCase(Locale locale),使用给定 Locale 的规则将此 String 中的所有字符都转换为小写。
42String toString(),返回此对象本身(它已经是一个字符串!)。
43String toUpperCase(),使用默认语言环境的规则将此 String 中的所有字符都转换为大写。
44String toUpperCase(Locale locale),使用给定 Locale 的规则将此 String 中的所有字符都转换为大写。
45String trim(),返回字符串的副本,忽略前导空白和尾部空白。
46static String valueOf(primitive data type x),返回给定data type类型x参数的字符串表示形式。
47CharSequence chars(),判断是否包含指定的字符系列。
48isEmpty(),判断字符串是否为空。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值