zoukankan      html  css  js  c++  java
  • Java常用类及方法

    一、Object

    Object类是所有类的父类,也就是说任何一个类在定义时如果没有明确地继承一个父类,那它就是Object的子类。

    Object类常用方法:

    方法说明
    Object clone()创建与该对象的类相同的新对象。
    boolean equals(Object)比较两个对象是否相等,默认比较的是地址值。
    void finalize()当垃圾回收器确定不存在对该对象的更多引用时,对象的垃圾回收器调用该方法。
    Class getClass()返回一个对象运行时的实例类(.class文件)。
    int hashCode()返回该对象的散列码值。
    void notify()激活等待在该对象的监视器上的一个线程。
    void notifyAll激活等待在该对象的监视器上的全部线程。
    String toString()返回该对象的字符串表示,默认返回运行时类名+@+对象的hashCode的16进制数。
    void wait()在其他线程调用此对象的notify()方法或notifyAll()方法前,导致当前线程等待。

    注:

    • 如果两个对象的哈希码值不同,那这两个对象一定不等;

    • 如果两个对象的哈希码值相同,不能保证这两个对象一定相等;

    • 克隆对象对应的类需要实现Cloneable接口,否则会报错:java.lang.CloneNotSupportedException;

    常覆写Object类的3个方法:toString()、equals(Object obj)、hashCode()

    二、String

    String表示的是字符串,字符串是常量(值定义了之后,不可修改),字符串是一个char类型的数组。

    public final class String
    

    class前加上final代表了该类不可以被继承,因为继承了之后,子类就可以重写父类的方法,这是不允许的。

    构造方法:

    方法说明
    String()创建一个空的字符串。
    String(byte[] bys)通过字节数组创建字符串。
    String(char[] chs)通过字符数组创建字符串。
    String(byte[] bys, int offset, int length)通过字符数据一部分创建字符串。
    String(char[] chs, int offset, int length)通过字符数组一部分创建字符串。
    String(String original)通过字符串常量值创建字符串。

    判断功能:

    方法说明
    equals(Object obj)比较两个字符串是否相等。注:equals 方法容易抛空指针异常,应使用常量或确定有值的对象来调用
    equalsIngnoreCase(Object obj)忽略大小写比较两个字符串是否相等。
    contains(String str)是否包含指定字符串。
    startsWith(String str)是否以指定的字符串开头。
    endWith(String str)是否以指定的字符串结尾。
    isEmpty()是否为空。
    matches(String regex)判断字符串是否匹配给定的正则表达式。注:使用正则表达式的d时,因为需要先进行转义,所以d用 d来表示

    获取功能:

    方法说明
    length()获取长度。
    charAt(int index)获取指定索引位置处的字符。
    indexOf(int ch)获取指定字符第一次出现的索引值,从0开始
    indexOf(int ch, int formIndex)获取从指定索引位置开始,获取指定字符第一次出现的索引值。
    indexOf(String s)获取指定字符串第一次出现的索引值。
    indexOf(String s, int fromIndex)获取从指定索引位置开始,指定字符串第一次出现的索引值。
    lastIndexOf(int ch)获取指定字符最后一次出现的索引值。
    substring(int start)从指定位置开始一直截取到末尾。
    substring(int start, int end)截取[start,end-1]范围

    注:如果indexOf方法未找到,则返回-1.

    转换功能:

    方法说明
    byte[] getBytes()将字符串转成字节数组。
    char[] toCharArray()将字符串转成字符数组。
    static valueOf(char[] chs)将char[]转成字符串。
    static valueOf(int num)将int类型转成字符串。
    static valueOf(Object obj)将任意类型转成字符串。
    toLowerCase()转成小写。
    toUpcase()转成大写。
    concat(String str)字符连接。

    其他功能:

    方法说明
    replace(char old, char new)将old字符替换成new字符。
    replace(String old, String new)将old字符串替换成new字符串。
    trim()去除两边空格。
    int compareTo(String s)字典比较,如果前面值小于后面值返回负数,否则返回正数,先比较第一个元素,如果相等在比较第二个元素,返回元素之间的差值;如果比较字符有包含关系,返回的值是长度差值。
    int compareTolgnoreCase(String s)忽略大小写字典比较。
    String replaceAll(String regx, String replacement)使用给定的replacement替换此字符串所有匹配给定的正则表达式的子字符串。
    String replaceFirst(String regex, String replacement)使用给定的replacement替换字符串匹配给定的正则表达式的第一个子字符串。
    String[] split(String regex)根据给定正则表达式的匹配拆分此字符串。
    String[] split(String regex, int limit)根据匹配给定的正则表达式来拆分此字符串。

    三、StringBuffer类

    StringBuffer是可变长度,如果代码中有比较多的字符串拼接,建议使用StringBuffer效率好。StringBuffer初始大小是16个字符的数组,如果数组满了后,新的容量是原来的2倍+2。

    常用方法:与StringBuilder差不多。

    四、StringBuilder类

    线程不安全的可变字符序列。

    构造方法:

    方法说明
    StringBuilder()已默认容量创建空的StringBuilder对象。
    StringBuilder(int capacity)以指定容量创建空的StringBuilder对象。
    StringBuilder(String str)以指定的字符串创建StringBuilder对象。

    常用方法:

    方法说明
    获取容量。
    int length()获取长度。
    append(int value)追加,可以追加多种类型。
    insert(int offset,String s)在指定的位置插入指定数据。
    deleteCharAt(int index)删除指定索引处的元素。
    delete(int start, int end)删除[start,end-1]范围内的元素。
    reverse()元素反转。

    String、StringBuilder、StringBuffer

    • String内容不可改变。

    • StringBuilder和StringBuffer内容可变。

    • StringBuilder是线程不安全的,不同步,效率高。

    • StringBuffer是线程安全的,同步,效率低。

    五、Math类

    方法说明
    abs(int a)绝对值。
    ceil(double d)向上取整。
    floor(double d)向下取整。
    max(int a, int b)最大值。
    pow(double a, double b)a的b次幂。
    random()随机数[0.0,1.0)
    round(float f)四舍五入。
    sqrt(double d)算数平方根。

    六、Date类

    方法说明
    Date()以当前时间毫秒值创建Date对象。
    Date(long time)以指定的毫秒值创建Date对象。
    long getTime()返回自从GMT 1970-01-01 00:00:00到此date对象上时间的毫秒数。
    setTime(long time)设置Date对象的毫秒值。

    七、DateFormat

    DateFormat是一个抽象类,用来格式化或解析日期。

    getDateInstance(int style, Locale loc):获取日期格式器,改格式器具有给定的语言环境和给定的格式化风格。

    String format(Date date):格式化。

    Date parse(String time):解析。

    八、SimpleDateFormat

    SimpleDateFormat是DateFormat的子类。

    1. 构造方法:
    • SimpleDateFormat():以默认模式创建对象。

    • SimpleDateFormat(String pattern):以指定模式创建对象。

    常用模式:

    • yyyy 年

    • MM 月

    • dd 日

    • HH 时

    • mm 分

    • ss 秒

    1. 常用方法:
    • String format(Date date):格式化。

    • Date parse(String time):解析。

    // 当前时间 java.util.Date 工具类包下的Date
            Date date = new Date();
            System.out.println(date);
            // 构造方法传入自己的格式
            // yyyy-MM-dd HH:mm:ss(java) yyyy-mm-dd hh24:mi:ss(oracle)
            SimpleDateFormat format
                    = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
            // 把日期转换为一定格式的字符串
            String dateStr = format.format(date);
            System.out.println(dateStr);
            // 把指定的字符串日期解析为日期对象
            Date newDate = null;
            try {
                newDate = format.parse("2021-03-15 15:00:01");
            } catch (ParseException e) {
                e.printStackTrace();
            }
            System.out.println(newDate);
    

    九、Calendar类

    日历类,用于获取或者操作日历字段(年月日),该类是一个抽象类,不可被实例化。

    常用方法:

    • static Calender getInstance():以默认时区和语言创建日历。

    • int get(int field):获取指定字段的日历值。

    • set(int field, int value):给指定的日历字段设置指定的值。

    • set(int year, int month, int date):设置年月日

    • Date getTime():获取日历对象的日期。

    • setTime(Date d):设置日历对象的日期。

    • add(int field, in amount):对指定的日历字段添加指定的值。

  • 相关阅读:
    git merge远程合并
    开发中必知必会的常用Linux命令
    mysql双机双向热备
    入门级实操教程!从概念到部署,全方位了解K8S Ingress!
    linux常用命令,你应该了解的Linux知识
    MFC的静态库.lib、动态库.dll(包含引入库.lib)以及Unicode库示例
    Java 表达式之谜:为什么 index 增加了两次?
    Vavr Option:Java Optional 的另一个选项
    一文详解 Java 的八大基本类型!
    如何找到真正的 public 方法
  • 原文地址:https://www.cnblogs.com/zbh355376/p/14545362.html
Copyright © 2011-2022 走看看