Java API之常用工具类20200918

现在是2020年9月18日09:24:38,继续对Java API进行介绍。

本次介绍的是Java中常用的工具类,他们分别是数学类Math、随机数产生类Random、日期类Date与格式化日期类SimpleDateFormat、数据输入类Scanner。

Math类用实现了很多数学运算的方法,如求三角函数值、求指数、求对数、求绝对值等,这里仅列出方法描述的表格,请有需要的同学自行测试。剩余的三个类,我将直接呈现测试的代码,在注释中穿插解释。

当然,这次可能不够深入,比如Scanner类,他其实是一个简单的文本扫描器,可以使用正则表达式解析原始类型和字符串,这个可以先不懂,以后有需要才进一步学习,本文着重它在控制台里输入数据的这个功能。 Java入门,还是得从简单的和经典的入手,好吧?

1、Math

在这里插入图片描述

2、Random
package cn.drgn.javase.api;

import java.util.Random;
/**
 * Create by Drgn on 2020/9/13 18:23
 * 1、Random类是一个专门产生随机数的类,
 * 2、Random类有两个构造方法,一个无参,一个是传入一个种子数作为参数。
 *    传入种子数的好处是:下次运行代码是会的到与之前相同的随机数。
 * 3、调用Random对象的nextXxx()方法,会获得对应类型的随机数(Xxx = Int, Double, Boolean, Float, ...)
 *    测试代码如下:
 */
public class RandomTest {
    public static void main(String[] args) {
        // 没有种子数,当下次运行时,不再是之前的随机数了
        Random r = new Random();
        // 传入的参数的种子seed, 当下次传入这个12时,随机数与之前运行多的一模一样
        Random ra = new Random(12);

        // 返回下一个伪随机数,从这个随机数发生器的序列中均匀分布 int值。
        System.out.println(r.nextInt());
        // 返回下一个伪随机数,从这个随机数发生器的序列中 0.0和 1.0之间的 double值 0.0分布。
        System.out.println(r.nextDouble());
        // 从该随机数发生器的序列返回下一个伪随机数,
        // 高斯(“正”)分布 double值,平均值为 0.0 ,标准差为 1.0 。
        System.out.println(r.nextGaussian());
        System.out.println("-----------------------");

        // 生成随机字节并将它们放入用户提供的字节数组中。
        byte[] bytes = new byte[5];
        r.nextBytes(bytes);
        for (byte b: bytes){
            System.out.println(b);
        }
    }
}
3、Date && SimpleDateFormat
package cn.drgn.javase.api;

import java.text.SimpleDateFormat;
import java.util.Date;

public class DateTest{
    public static void main(String[] args){
        // 创建时间Date对象
        Date date = new Date();
        System.out.println(date);//Thu Sep 17 19:09:24 CST 2020
        // 创建格式化时间SimpleDateFormat对象
        SimpleDateFormat dataFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        // 调用格式化时间对象的format方法
        String curr = dataFormat.format(date);
        System.out.println(curr);//2020-09-17 19:09:24
        
        // 将上面几行的代码浓缩为下面一行格式化时间的代码,常用于获得当前格式化时间
        // 非常经典的一行代码
        String date = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date());
        System.out.println(date);//2020-09-17 19:09:24
        
    }
}
4、Scanner
  • 测试代码
package cn.drgn.javase.api;

import java.util.Scanner;

/**
 * Create by Drgn on 2020/9/13 18:24
 */
public class ScannerTest {

    public static void main(String[] args) {
        // 创建Scanner对象,传入System.in表示接收控制台中的文本信息
        Scanner scan = new Scanner(System.in);
        // 在控制台提供输入提示
        System.out.print("请输入一数字:");
        // 调用Scanner对象的nextInt()方法,接收一个整型数据。
        // 如果输入的不是整型,将会报错。
        int number = scan.nextInt();
        System.out.print("请输入一段话:");
        // 调用Scanner对象的next()方法,接收一个文本
        // 注意:输入文本过程中文本之中不能有空格、tab等,否则只读取空格、tab之前的文本
        String str = scan.next();
        System.out.println(number + ", " + str);
    }
}
  • 测试结果
    在这里插入图片描述
    好了,本次的几个简单工具类分享到这里,这次没有讲过多源码的内容,请有需要的同学自行探索。有问题望请指正,谢谢阅读。
    在这里插入图片描述
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值