java 常用基础类

java常用基础类:

在实际的项目开发中,经常借助于一些类来帮助完成特定的功能,例如进行数学运算、字符串运算、日期运算等等,这些类放在Java 2 Platform软件包内,不需要用户再次编写而直接使用,我们称这些类叫“Java工具类。

包装类


对于Java的基本数据类型,Sun公司均提供了对应的包装类,如下表所示

在这里插入图片描述
一、Integer整数类

Integer是int基本类型的包装类

属性:

在这里插入图片描述

构造方法:
在这里插入图片描述
二、Character 字符类

Character 类在对象中包装一个基本类型 char 的值。Character 类型的对象包含类型为 char 的单个字段。

属性:
在这里插入图片描述

构造方法:
Character(char value):以char参数构造一个Character对象
三、String字符串类

字符串大量用于我们的程序中,Java提供了String类专门用于表示字符串,内有大量实用的方法

构造方法:
在这里插入图片描述

方法:
在这里插入图片描述
四、字符串的不变形:

public class Test01 {
    public static void main(String[] args) {
        String results = "ILOVEYOUbaby";
        System.out.println(results.concat("susu"));
        System.out.println(results);
    }
}

结果如下:
在这里插入图片描述
五、StringBuffer字符串缓冲类

在实际应用中,经常会遇到对字符串进行动态修改。这时候,String类的功能受到限制,而StringBuffer类可以完成字符串的动态添加、插入和替换等操作,对StringBuffer的修改,是直接的,不会创建多余的对象。

构造方法:
在这里插入图片描述

方法:

public class Test01 {
    public static void main(String[] args) {
        StringBuffer stringBuffer = new StringBuffer("ILOVEYOUbaby");
        System.out.println(stringBuffer.append("sususu"));
        System.out.println(stringBuffer);
    }
}

结果如下:
在这里插入图片描述
六、Random随机类

构造方法:

在这里插入图片描述

方法:

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

        Random r1 = new Random(50);

        System.out.println("第一个种子为50的Random对象");
        System.out.println("r1.nextBoolean():\t" + r1.nextBoolean());
        System.out.println("r1.nextInt():\t\t" + r1.nextInt());
        System.out.println("r1.nextDouble():\t" + r1.nextDouble());
        System.out.println("r1.nextGaussian():\t" + r1.nextGaussian());
        System.out.println("---------------------------");

        Random r2 = new Random(50);

        System.out.println("第二个种子为50的Random对象");
        System.out.println("r2.nextBoolean():\t" + r2.nextBoolean());
        System.out.println("r2.nextInt():\t\t" + r2.nextInt());
        System.out.println("r2.nextDouble():\t" + r2.nextDouble());
        System.out.println("r2.nextGaussian():\t" + r2.nextGaussian());
        System.out.println("---------------------------");

        Random r3 = new Random(100);

        System.out.println("种子为100的Random对象");
        System.out.println("r3.nextBoolean():\t" + r3.nextBoolean());
        System.out.println("r3.nextInt():\t\t" + r3.nextInt());
        System.out.println("r3.nextDouble():\t" + r3.nextDouble());
        System.out.println("r3.nextGaussian():\t" + r3.nextGaussian());
        System.out.println("结果一目了然!");

    }
}

结果如下:
在这里插入图片描述
七、Data时间类

  • 获取当前日期的时间
  • 日期比较
  • 使用 SimpleDateFormat 格式化日期
  • 使用printf格式化日期
  • 测量时间

一、获取当前日期的时间
java中获取当前日期和时间很简单,使用 Date 对象的 toString() 方法来打印当前日期和时间

代码如下:

public class Test01 {
    public static void main(String[] args) {
        // 初始化Data对象
        Date date = new Date();
        // 使用toString()函数显示日期时间
        System.out.println(date.toString());
    }
}

结果如下:
在这里插入图片描述
二、日期比较
java中使用以下三种方法来比较两个日期:

  • 使用 getTime() 方法获取两个日期(自1970年1月1日经历的毫秒数值),然后比较这两个值。
  • 使用方法 before(),after() 和 equals()。例如,一个月的12号比18号早,则 new Date(99, 2, 12).before(new Date (99, 2, 18)) 返回true。
  • 使用 compareTo() 方法,它是由 Comparable 接口定义的,Date 类实现了这个接口。

三、使用 SimpleDateFormat 格式化日期

  • SimpleDateFormat 是一个以语言环境敏感的方式来格式化和分析日期的类。
  • SimpleDateFormat 允许你选择任何用户自定义日期时间格式来运行

代码如下:

public class Test01 {
    public static void main(String[] args) {
        Date date = new Date();
        SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-mm-dd hh:mm:ss");
        System.out.println(simpleDateFormat.format(date));
    }
}

结果如下:
在这里插入图片描述
四、使用printf格式化日期

c 包括全部日期和时间信息
F "年-月-日"格式
D "月/日/年"格式
r "HH:MM:SS PM"格式(12时制)
T "HH:MM:SS"格式(24时制)
R "HH:MM"格式(24时制)

五、测量时间

public static void main(String args[]) {
        try {
            long start = System.currentTimeMillis( );//获取开始时间,以自1970年1月1日经历的毫秒数值表示
            System.out.println("start time: "+new Date( ) + "\n");
            Thread.sleep(1000*3);//sleep()使当前线程进入停滞状态(阻塞当前线程),可以使程序休眠一定的时间,这里休眠3秒
            System.out.println("end time: "+new Date( ) + "\n");
            long end = System.currentTimeMillis( );//获取结束时间
            long diff = (end - start)/1000;//转换为秒数
            System.out.println("time spand : " + diff);
        } catch (Exception e) {
            System.out.println("Got an exception!");
        }
    }

在这里插入图片描述
八、Calendar日历类

由于Calendar类是一个抽象类,所以不能直接通过new关键字创建Calendar类的实例,可以借助于该类提供的静态方法getInstance()来获得一个Calendar对象。正像Date类的默认构造方法一样,该对象所代表的日期正是当前系统日期:

Calendar rightNow = Calendar.getInstance();

Calendar抽象类有一个具体子类:GregorianCalendar。

public static void main(String[] args) {
//创建Calendar实例
        Calendar ca = Calendar.getInstance();
//获得ca所包含的年份。注意写法
        System.out.println("year is :"+ca.get(Calendar.YEAR));
//为年份增加2
        ca.add(Calendar.YEAR, 2);
        System.out.println("year is :"+ca.get(Calendar.YEAR));
//设置ca的年份
        ca.set(Calendar.YEAR,2009);
        System.out.println("year is :"+ca.get(Calendar.YEAR));
//今天是今年的第几天
        System.out.println("day of year:"+ca.get(Calendar.DAY_OF_YEAR));
//今天是本周的第几天,注意默认情况下周日是第一天
        System.out.println("day of week : "+ca.get(Calendar.DAY_OF_WEEK));
//获得对应的Date对象
        Date date = ca.getTime();
        System.out.println("date time : "+date.getTime());
        System.out.println("calendar time : "+ca.getTimeInMillis());
    }

在这里插入图片描述
九、Math算数运算类

Math类中的静态方法帮助我们完成基本的数学运算,它的定义形式为:
public final class Math extends Object
可以看出,Math类是一个最终类,也就是说,它不能被继承,更不能被重写,Math类中的方法全部为静态方法,直接使用就行。

public static void main(String[] args) {
        
        // 绝对值
        System.out.println("abs of -1 : " + Math.abs(-1));
        // 比这个数大的最小整数
        System.out.println("ceil of 9.01 : " + Math.ceil(9.01));
        // 比这个数小的最大整数
        System.out.println("floor of 9.99 :" + Math.floor(9.99));
        // 取较大者
        System.out.println("the max is : " + Math.max(101, 276.001));
        // 随机数,区间为[0.0,1.0)
        System.out.println("random number : " + Math.random());
        // 四舍五入
        System.out.println("round value of 9.49 :" + Math.round(9.49));
        // 返回正确舍入的 double 值的正平方根
        System.out.println("square root of 225 : " + Math.sqrt(225));
    }

在这里插入图片描述


  • 3
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值