【java】【面对对象高级5】常用API(Object、Objects、包装类、StringBuilder、StringBuffer、StringJoiner)

本文介绍了Java中Object类的关键方法,包括toString、equals和clone,讲解了深浅克隆的区别。此外,还详细讨论了Objects类的非空判断和等于比较方法。接着,探讨了包装类的作用,如Integer的自动装箱和拆箱。然后,提到了StringBuilder和StringBuffer用于字符串拼接的高效方式,以及StringJoiner的使用,展示了如何优化字符串连接的案例。
摘要由CSDN通过智能技术生成

目录

 1 概述

2 常用API图​编辑

3 API - Object类

3.1 作用

3.2 API说明

3.3 Object常见方法

 3.3.1 toString 返回对象的字符串表示形式

 3.3.2 equals(Object o) 判断两个对象是否相等

3.3.3 clone() 对象克隆 

3.3.3.1 浅克隆

3.3.3.2 深克隆

4、API - Objects类

4.1 作用

 4.2 API说明

 4.3 Objects常见方法

4.3.1 equals先做非空判断,再比较两个对象

4.3.2 isNull判断对象是否为null,为null返回true,反之

4.3.3 nonNull判断对象是否不为null,不为null返回true,反之

5 API - 包装类

 5.1 作用

 5.2 API说明

 5.3 包装类常见方法

5.3.1 Integer

5.3.1.1 自动装箱和自动拆箱

 5.3.1.2 解决泛型和集合不支撑基本数据类型问题

 5.3.2 包装类的其他常见操作

6 API - StringBuilder

6.1 作用

 6.2 API说明

 6.3 StringBuilder常见方法

 6.3.1 append 添加数据并返回StringBuilder对象本身

 6.3.2 reverse 将对象的内容反转

6.3.3 length 返回对象内容长度

6.3.4 toString 通过toString()把实现的StringBuilder转换成String

 6.3.5 StringBuilder的好处(对比String)

 6.3.6 案例

7 API - StringBuffer 

8 API - StringJoiner

 8.1 作用

8.2 API说明 

 8.3 StringJoiner常见方法

 8.3.1 add 添加数据,并返回对象本身

8.3.2 优化6.3.6案例


前言:前面语法学完,现在就是学习高级java的API使用,掌握越多,能力越强

 1 概述

2 常用API图

3 API - Object类

3.1 作用

3.2 API说明

 

3.3 Object常见方法

 3.3.1 toString 返回对象的字符串表示形式

在实体类重写toString方法(tos回车快捷生成)

 

 3.3.2 equals(Object o) 判断两个对象是否相等

重写equals方法比较两个对象的内容一样就返回true。(原始的是比较地址是否相等)

在实体类输入eq 回车 回车。。。

3.3.3 clone() 对象克隆 

implements

u1.clone() alt + enter 抛出异常

实体类输入clone 回车(重写clone方法)

克隆结果 

 

3.3.3.1 浅克隆

3.3.3.2 深克隆

 将上面的浅拷贝改成深拷贝

 

4、API - Objects类

4.1 作用

 4.2 API说明

 

 4.3 Objects常见方法

4.3.1 equals先做非空判断,再比较两个对象

4.3.2 isNull判断对象是否为null,为null返回true,反之

4.3.3 nonNull判断对象是否不为null,不为null返回true,反之

5 API - 包装类

 5.1 作用

 5.2 API说明

以Integer为例:

 

 5.3 包装类常见方法

5.3.1 Integer

5.3.1.1 自动装箱和自动拆箱

 5.3.1.2 解决泛型和集合不支撑基本数据类型问题

 5.3.2 包装类的其他常见操作

  推荐使用valueOf不推荐parseDouble

6 API - StringBuilder

6.1 作用

 6.2 API说明

 

 

 

 6.3 StringBuilder常见方法

 6.3.1 append 添加数据并返回StringBuilder对象本身

 

 6.3.2 reverse 将对象的内容反转

 

6.3.3 length 返回对象内容长度

 

6.3.4 toString 通过toString()把实现的StringBuilder转换成String

 

 6.3.5 StringBuilder的好处(对比String)

 性能提升

 6.3.6 案例

package com.runa.staticdemo;

public class TestStringBuilger {
    public static void main(String[] args) {
        System.out.println(getArrayData(new int[]{11, 22, 33}));
    }
    public static String getArrayData(int[] arr){
        // 1 判断arr 是否为null
        if(arr == null){
            return null;
        }
        // 2 arr 数组对象存在,arr = [11, 2, 3]
        StringBuilder sb = new StringBuilder();
        sb.append("[");
        for (int i = 0; i < arr.length; i++) {
            if(i == arr.length - 1){
                sb.append(arr[i]);
            }else{
                sb.append(arr[i]).append(", ");
            }

        }
        sb.append("]");
        return sb.toString();
    }
}

7 API - StringBuffer 

 

8 API - StringJoiner

 8.1 作用

8.2 API说明 

 8.3 StringJoiner常见方法

 8.3.1 add 添加数据,并返回对象本身

package com.runa.staticdemo;

import java.util.StringJoiner;

public class TestStringJoiner {
    public static void main(String[] args) {
        StringJoiner s = new StringJoiner(", ");
        s.add("java");
        s.add("python");
        s.add("c++");
        System.out.println(s);
    }
}

执行结果:

java, python, c++
package com.runa.staticdemo;

import java.util.StringJoiner;

public class TestStringJoiner {
    public static void main(String[] args) {
        StringJoiner s = new StringJoiner(", ","[","]");
        s.add("java");
        s.add("python");
        s.add("c++");
        System.out.println(s);
    }
}

执行结果:

[java, python, c++]

8.3.2 优化6.3.6案例

注意 + ""

package com.runa.staticdemo;

import java.util.StringJoiner;

public class TestStringJoiner {
    public static void main(String[] args) {
        System.out.println(getArrayData(new int[]{11, 22, 33}));
    }

    public static String getArrayData(int[] arr){
        // 1 判断arr 是否为null
        if(arr == null){
            return null;
        }
        // 2 arr 数组对象存在,arr = [11, 2, 3]
        StringJoiner s = new StringJoiner(", ","[","]");
        for (int i = 0; i < arr.length; i++) {
            s.add(arr[i] + ""); //  +""目的是变成字符串
        }
        return s.toString();
    }
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值