0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

复习笔记6-API

Posted at

1.Object类

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

⭐为了被子类重写,以便返回对象具体的内容

②equals:判断两个对象是否相等

⭐为了被子类重写,以便子类自己来定制比较规则(比如比较对象的内容)
直接比较两个对象的地址是否相同:==

        // TODO Object类提供的常用方法
        Student s1 = new Student("赵敏",23);
        System.out.println(s1.toString());// Student{name='赵敏', age=23}
        System.out.println(s1);// Student{name='赵敏', age=23}


        Student s2 = new Student("赵敏",23);
        System.out.println(s2.equals(s1));// true
        System.out.println(s2 == s1);// false

③clone(对象克隆)

当某个对象调用这个方法时,这个方法会复制一个一模一样的新对象返回
⭐需要实现Cloneable接口

        // TODO Object类提供的对象克隆的方法
        // 对象克隆 protected Object clone()
        User u1 = new User(1,"张三","wo666",new double[]{99.0,99.5});

        User u2 = (User) u1.clone();

        System.out.println(u1.getId());
        System.out.println(u1.getPassword());
        System.out.println(u1.getUsername());
        System.out.println(u1.getScores());

        System.out.println("--------------------");

        System.out.println(u2.getId());
        System.out.println(u2.getPassword());
        System.out.println(u2.getUsername());
        System.out.println(u2.getScores());

浅克隆:引用类型拷贝的只是地址
深克隆:基本类型的数据直接拷贝,字符串数据拷贝的还是地址

2.Objecs类

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

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

③nonMull:判断对象是否不为null,不为null则返回true,反之

3.包装类

就是把基本类型的数据包装成对象
image.png
自动装箱:基本数据类型可以自动转换为包装类型
自动拆箱:包装类型可以自动转换为基本数据类型
⭐包装类的其他常见操作
image.png
⭐ 泛型和集合不支持基本数据类型,只能支持引用数据类型

        // ArrayList<int> list = new ArrayList<int>();
        ArrayList<Integer> list = new ArrayList<>();

4.StringBuilder/StringBuffer

代表可变字符串对象,相当于是一个容器,它里面装的字符串是可以改变的,就是用来操作字符串的(类似于String的功能)

①方法

⭐append:添加数据并返回StringBuilder对象本身(添加内容)
⭐reverse:将对象的内容反转
⭐length:返回对象内容长度
⭐toString:把StringBuilder转换为String

5.StringJoiner

跟StringBuilder一样,也是用来操作字符串的,也可以看成是一个容器,创建之后里面的内容是可变的

方法

⭐add:添加数据,并返回对象本身
⭐length:返回长度(字符出现的个数)
⭐toString:返回一个字符串(该字符串就是拼接之后的结果)

6.Math

代表数学,是一个工具类,里面提供的都是对数据进行操作的一些静态方法
image.png

7.System

代表程序所在的系统
image.png

8.BigDecimal

⭐解决小数运算失真的问题
image.png

9.Date

image.png

10.SimpleDateFormat

代表简单日期格式化,可以用来把日期对象,时间毫秒值格式化成我们想要的形式
image.png
image.png

11.Calendar

代表的是系统此刻时间对应的日历,通过它可以单独获取,修改时间中的年月日时分秒
image.png

12.注意

image.png

13.

localDate:代表本地日期(年月日星期)
LocalTime:代表本地时间(时分秒纳秒)
localDateTime:代表本地日期,时间(年月日星期时分秒纳秒)
image.png
image.png
image.png

14.Zoneld ZoneDateTime 时区

image.png

15.Instant

时间线上的某个时刻,时间戳
image.png

16.DateTimeFormatter

image.png

17.Duration Period

可以用于计算两个LocalDate对象相差的年数,月数,天数
image.png

18.Duration

可以用于计算两个时间对象相差的天数,小时数,分数,秒数,纳秒数
image.png

19.Arrays

用来操作数组的工具类
image.png

        // 1.返回数组的内容
        int[] arr = {10,20,30,40,50,60};
        System.out.println(Arrays.toString(arr));// [10, 20, 30, 40, 50, 60]

        // 2.拷贝数组:指定范围,包前不包后
        int[] arr2 = Arrays.copyOfRange(arr,1,4);
        System.out.println(Arrays.toString(arr2));// [20, 30, 40]

        // 3.拷贝数组,可以指定新数组的长度
        int[] arr3 = Arrays.copyOf(arr,10);
        System.out.println(Arrays.toString(arr3));// [10, 20, 30, 40, 50, 60, 0, 0, 0, 0]

        // 4.把数组中的原数据改为新数据又存进去
        double[] prices = {99.8,128,100};
        // 把所有的价格都打八折,然后又存进去
        Arrays.setAll(prices, new IntToDoubleFunction() {
            @Override
            public double applyAsDouble(int value) {
                // value 取索引
                return prices[value] * 0.8;
            }
        });
        System.out.println(Arrays.toString(prices));//  [79.84, 102.4, 80.0]

        // 5.对数组进行排序,默认升序排序
        Arrays.sort(prices);
        System.out.println(Arrays.toString(prices));// [79.84, 80.0, 102.4]
0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?