常用类

java.util.Objects

常用方法:

  • public static int checkFromIndexSize(int fromIndex, int size, int length) 检查数组下标是否越界

    fromIndex:开始存入的数组下标,size:需要存入数据的大小,length:数组的长度

  • static boolean equals(Object a, Objectb) 如果参数相等,返回true,否则false

    在a、b参不确定是否为null时都可调用进行比较判断

  • static boolean isNull(Object obj) 如果传入参数obj为null返回true,否则false

  • static boolean nonNull(Object obj) 如果传入参数obj不为null返回true,否则false

  • static T requireNonNull(T obj) 如果传入参数obj不为null则返回obj本身,否则抛出异常

    在需要web前端一定传入非空参数时可使用,传入参数为空利用异常补救


java.lang.Math

常用方法:

  • static double abs(double a) 返回 double值的绝对值。

  • static int addExact(int x, int y) 返回其参数的总和,如果结果溢出 int则抛出异常。

  • static int subtractExact(int x, int y) 返回参数的差异,如果结果溢出 int则抛出异常。

  • static int multiplyExact(int x, int y) 返回参数的乘积,如果结果溢出 int则抛出异常。

  • static double random() 返回带有正号的 double值,大于或等于 0.0且小于 1.0

    用于产生随机数,结合以下三个取整方法

  • static long round(double a) 四舍五入为正无穷

  • static double ceil(double a) 接近正无穷大的第一个整数(正数:小数全入)

  • static double floor(double a) 接近负无穷大的第一个整数(正数:小数全舍)

  • static double nextDown(double d) 返回负无穷大方向上与 d相邻的浮点值。


java.util.Arrays

常用方法:

  • static int binarySearch(byte[] a, byte key) 使用二进制搜索算法在指定的字节数组中搜索指定的值。

    查找数组中的元素,找到返回下标

  • static int compare(char[] a, char[] b) char字典顺序比较两个 char阵列。

  • static char[] copyOf(char[] original, int newLength) 使用空字符复制指定的数组,截断或填充(如有必要),以使副本具有指定的长度。

    复制数组,超出新数组长度截断,不足相应数据填充

  • static boolean equals(char[] a, char[] a2) 如果两个指定的字符数组彼此 相等 ,则返回 true 。

  • static boolean deepEquals(Object[] a1, Object[] a2) 如果两个指定的数组彼此 深度相等 ,则返回 true 。

  • static void fill(Object[] a, Object val) 将指定的Object引用分配给指定的Objects数组的每个元素。

  • static int mismatch(Object[] a, Object[] b) 查找并返回两个 Object数组之间第一个不匹配的索引,否则如果未找到不匹配则返回-1。

  • static void parallelSort(int[] a) 将指定的数组按升序排序。

  • static String toString(char[] a) 返回指定数组内容的字符串表示形式。


java.math.BigDecimal

专用于算数运算,解决小误差问题

  • BigDecimal add(BigDecimal augend) 加法运算
  • BigDecimal subtract(BigDecimal subtrahend) 减法运算
  • BigDecimal multiply(BigDecimal multiplicand) 乘法运算
  • BigDecimal divide(BigDecimal divisor) 除法运算
  • static BigDecimal valueOf(double val) double转换成BigDecimal
  • double dobuleValue() BigDecimal转换成double

java.util.Date

对已过时的解释:一部分使用相关代码的程序员遇到bug后向官方反应,官方会标注已过时,由于还会有一部分人仍然正常使用这段代码,因此原本的代码并不会删除,还能继续使用,只是官方会给出解决的方法,提供新的代码。

Date类表示特定的时刻,精度为毫秒。
推荐可正常使用的方法:

  • long getTime() 返回自此Date对象表示的1970年1月1日00:00:00 GMT以来的毫秒数。

关注两个构造方法:

  • Date() 创建当前的时间对象
  • Date(long date) 指定相对1970年1月1日00:00:00 GMT的毫秒时间

java.text.DateFormat

格式化和分析日期或时间,抽象类,只能使用子类SimpleDateFormat

解析日期时注意:输入的字符串要和你想要的格式一样才行

// y:年  M:月  d:日  H:时(24小时制)  h:(12小时制)  m:分  s:秒
// 格式化日期
Date date1 = new Date();
SimpleDateFormat format = new SimpleDateFormat("yyyy年MM月dd日 HH时mm分ss秒");
String text1 = format.format(date1);      // 2021年02月18日 18时32分05秒

// 解析日期
Date date2 = format.parse("2021年12月12日 12时12分12秒");
String text2 = format.format(date2);      // 2021年12月12日 12时12分12秒

java.util.Calendar

抽象类,通过getInstance()方法创建对象

Calendar rightNow = Calendar.getInstance();

Calendar类日期时间存在一个数组中,通过传入字段作为数组下标的值进行日历操作

通过相应字段可快速获取一年中的第几天、一年中第几个月、一个月中第几周、一周中第几天…

注意:月份0-11;星期从周日开始计算1(周日)-7(周六);

  • int get(int field) 传入相应字段获取时间日历

  • void set(int field, int value) 传入字段及值可设置日历

  • void add(int field, int amount) 日历加减计算

  • Date getTime() 获取Date对象

  • int getActualMaximum(int field) 获取某字段的最大值


java.lang.System
  • static void arraycopy(Object src, int srcPos, Object dest, int destPos, int length) 将指定源数组中的数组从指定位置开始复制到目标数组的指定位置。 src - 源数组。 srcPos - 源数组中的起始位置。 dest - 目标数组。 destPos - 目标数据中的起始位置。 length - 要复制的数组元素的数量。
  • static void gc() 运行垃圾收集器。
  • static void exit(int status) 终止当前运行的Java虚拟机。
  • static long currentTimeMillis() 以毫秒为单位返回当前时间。

java.lang.String

字符串是常量;它们的值在创建之后不能改变。

  • 因为String对象是不可变的,所以可以共享它们:String类有一个对应的String池,也就是 String pool,每一个内容相同的字符串对象都对应于一个pool里的对象。

    eg: new String(“abc”) 通过new创建字符串的时候,先在常量池看看有没有相同内容"abc"的对象,没有就创建一个"abc",同时在堆中再创建一个"abc"对象

不通过new创建的字符串对象,内容相同则引用所指的内存也相同

字符串拼接尽量避免,大量拼接可使用StringBuilder(线程不安全,快速)、StringBuffer(线程安全)

// 线程不安全(快速)
StringBuilder stringBuilder = new StringBuilder();
stringBuilder.append("hello ");
stringBuilder.append("world!");
String str = stringBuilder.toString();      // hello world!

常用构造方法:

  • String(byte[] bytes) 通过使用平台的默认字符集解码指定的字节数组构造新的 String 。
  • String(byte[] bytes, String charsetName) 构造一个新的String由指定用指定的字节的数组解码charset 。
  • String(StringBuffer buffer) 分配一个新字符串,其中包含当前包含在字符串缓冲区参数中的字符序列。

常用方法:

  • char charAt(int index) 返回指定索引处的 char值。
  • int codePointAt(int index) 返回指定索引处的字符(Unicode代码点)。
  • boolean endsWith(String suffix) 测试此字符串是否以指定的后缀结尾。
  • byte[] getBytes() 使用平台的默认字符集将此 String编码为字节序列,将结果存储到新的字节数组中。
  • byte[] getBytes(String charsetName) 使用命名的字符集将此 String编码为字节序列,将结果存储到新的字节数组中。
  • char[] toCharArray() 将此字符串转换为新的字符数组。
  • int indexOf(String str) 返回指定子字符串第一次出现的字符串中的索引。
  • int lastIndexOf(String str) 返回指定子字符串最后一次出现的字符串中的索引。
  • String replace(char oldChar, char newChar) 返回从替换所有出现的导致一个字符串 oldChar在此字符串 newChar 。
  • String replaceAll(String regex, String replacement) 将给定替换的给定 regular expression匹配的此字符串的每个子字符串替换。
  • String[] split(String regex) 将此字符串拆分为给定 regular expression的匹配项 。
  • String trim() 返回一个字符串,其值为此字符串,删除了所有前导和尾随空格
  • static String valueOf(char c) 返回 char参数的字符串表示形式。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值