Java的常用类

String类

String的创建

String str = “”;
String s1 = new String();
String s1 = new String();
String s1 = new String(String original);
String s1 = new String(char[] a);
String s1 = new String(char[] a, int startIndex, int count);

字符串的注意点

常量与常量拼接结果在常量池,且常量池种不会存在相同内容的常量。
只要有一个变量,接果就在堆中。
如果拼接的结果调用了 intern()方法, 返回值也在常量池中
常量池中的字符串相等, 堆中的未必相等

字符串String的常用方法(参考尚硅谷教学)

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

String 与 数组转换
在这里插入图片描述
String 与 包装类转换
在这里插入图片描述
字符串与字节型数组转换
在这里插入图片描述

StringBuffer的常用方法

在这里插入图片描述

String与StringBuffer与StringBuilder的异同

在这里插入图片描述

日期类

获取时间戳

// 1.获取时间戳 1617594683653
long time = System.currentTimeMillis();

Date d1 = new Date();
// 2.时间戳 1617594683653
System.out.println(d1.getTime());

日期类的代码测试

package jzq.com.Date01;

import java.util.Date;

public class Date01 {
    public static void main(String[] args) {

        // 获取时间戳 1617594683653
        long time = System.currentTimeMillis();
        System.out.println(time);

        // 日期的构造器
        // 空参的
        Date d1 = new Date();
        // 日期格式  Mon Apr 05 11:50:15 CST 2021
        System.out.println(d1);
        // toString()  Mon Apr 05 11:50:53 CST 2021
        System.out.println(d1.toString());
        // 时间戳 1617594683653
        System.out.println(d1.getTime());

        // 创建指定时间戳的  Mon Apr 05 11:51:23 CST 2021
        Date d2 = new Date(1617594683653L);
        System.out.println(d2.toString());


        //  创建数据库时间对象  2021-04-05
        java.sql.Date d3 = new java.sql.Date(1617594683653L);
        System.out.println(d3);

        // 如何将 util.Date (Mon Apr 05 11:51:23 CST 2021) 转换为 sql.Date (2021-04-05)
        // 通过 util的Date的getTime() 方法  创建sql.Date =>2021-04-05
        Date d4 = new Date();
        java.sql.Date d5 = new java.sql.Date(d4.getTime());
        System.out.println(d5);
    }
}

日期的格式化类(SimpleDateFormat)

// 格式化 SimpleDateFormat类
Date dd = new Date();
// 构造时设置日期格式
SimpleDateFormat sdf = new SimpleDateFormat(“yyyy-MM-dd hh:mm:ss”);
// 格式化格式
String ddd = sdf.format(dd);
System.out.println(ddd);
// 转换成日期
Date date = sdf.parse(“2001-06-14 12:15:01”);
System.out.println(date);

获取当前的时间或日期,以及指定时间或日期(LocalDate 与 LocalTime 与 LocalDateTime)

now 获取当前的日期或者时间或者日期时间: (代码如下)

		LocalDate localDate = LocalDate.now();
        LocalTime localTime = LocalTime.now();
        LocalDateTime localDateTime = LocalDateTime.now();

of 获取指定的日期: (代码如下)

        LocalDateTime localDateTime2 = LocalDateTime.of(2000,07,05,05,14,22);

通过 getXXX() 获取详细的信息
例如: localDateTime.getYear()

Java 的比较器类(Comparable)

像包装类直接就实现了Comparable接口,并重写了compareTo(obj) 方法,如果自己定义的类需要使用: 自然排序

重写copareTo(obj)的规则

如果当前的对象this大于形参的对象obj, 则返回 正整数
如果当前的对象this小于形参的对象obj, 则返回 负整数
如果当前的对象this等于形参的对象obj, 则返回 零

对于自定义的类,我们可以实现 Comparable接口,重写compareTo(obj)方法实现自然排序

代码示例:

package jzq.com.Comparable01;

import java.util.Arrays;

public class comparable01{
    public static void main(String[] args) {
        Goods[] arrgoods = new Goods[4];
        arrgoods[0] = new Goods(55.2, "海尔");
        arrgoods[1] = new Goods(15.2, "双喜");
        arrgoods[2] = new Goods(35.2, "空军");
        arrgoods[3] = new Goods(45.2, "镭射");

        Arrays.sort(arrgoods);
        for (int i = 0; i <4 ; i++) {
            System.out.println(arrgoods[i].getPrice());
        }

    }
}



class Goods implements Comparable{
    private double price;
    private String name;

    public Goods() {}

    public Goods(double price, String name) {
        this.price = price;
        this.name = name;
    }

    public double getPrice() {
        return price;
    }

    public void setPrice(double price) {
        this.price = price;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    @Override
    public int compareTo(Object o) {
        if (o instanceof Goods) {
            Goods goods = (Goods)o;
            // 方式一
            if(this.price > goods.price) {
                return 1;
            }else if (this.price < goods.price) {
                return -1;
            }else {
                return 0;
            }
        }
        throw new RuntimeException("出错");
    }
}

System、Math、BigInteger、BigDecimal

System

系统类常用方法
在这里插入图片描述

Math类常用方法
在这里插入图片描述

BigInteger: 可以表示不可变的任意精度的整数。
常用方法如下:
在这里插入图片描述

BigDecimal
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值