java常用类

Scanner(键入)

Random(随机)

import java.util.Random;
import java.util.Scanner;

public class Game {
    public static void main(String[] args) {
        Random r = new Random();
        int randomNum = r.nextInt(100)+1;//[1~100]
        Scanner sc = new Scanner(System.in);
        while (true){
            System.out.println("请输入你猜测的数字:");
            int guessNum = sc.nextInt();//键盘猜测的数字

            if(guessNum>randomNum){
                System.out.println("太大了,请重试");
            }else if(guessNum<randomNum){
                System.out.println("太小了,请重试");
            }else{
                System.out.println("恭喜你猜中了");
                break;
            }
        }
        System.out.println("游戏结束");
    }
}

Date(日期)

package Sha.day1;

import java.util.Date;

/**
 * @author 
 * java,util.Date:表示日期和时间的类
 * 类Date表特定的瞬间,精确到毫秒
 * 毫秒:千分之一秒
 * 毫秒值可以对时间和日期进行计算
 * 就是把日期转成毫秒进行计算,完毕后,再把毫秒转成日期
 * 时间原点(0毫秒):1970-1-1-00:00:00
 */


public class DemoDate {
    public static void main(String[] args) {
        System.out.println(System.currentTimeMillis());//获取当前毫秒值到1970-1-1-00:00:00经历了多少毫秒
         demo1();
         demo2();
         demo3();
    }
/**
 * public long getTime()返回自1970年1月1日以来,
 * 由 Date对象表示的00:00:00 GMT的毫秒数
 */
    private static void demo3() {
        Date date = new Date();
        long time = date.getTime();
        System.out.println(time);
    }

    /**
 * Date类的带参数构造方法
 * Date(long date):传递毫秒值,把毫秒值转为日期
*/
    private static void demo2() {
        Date date = new Date(0L);
        System.out.println(date);

        Date date1 = new Date(5485446833454L);
        System.out.println(date1);//日期变毫秒
    }

    /**
* Date类的空参数构造方法:
* Date()获取的就是当前系统的日期和时间
*
*/
    private static void demo1() {
        Date date = new Date();
        System.out.println(date);
    }
}

DateFormat(用于格式化或解析)

package Sha.day1;

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

/**
 * DateFormat是日期/时间格式化子类的抽象类,
 * 它以语言无关的方式格式化和分析日期或时间。
 * 日期/时间格式化子类(如SimpleDateFormat )允许格式化(即日期文本),解析(文本日期)和归一化。
 * 该日期表示为一个Date对象,或自1970年1月1日00:00:00 GMT以来的毫秒。 */
public class DemoDateF {
/*
* 成员方法
* String format(Date date) 按照指定模式,把Date日期,格式化为符合模式的字符串
* Date parse(String source)把符合模式的字符串解析为Date日期
* */
public static void main(String[] args) throws ParseException {
    demo01();
    demo02();
}

    private static void demo02() throws ParseException {
//    如果两个的模式不一样就会抛出异常,所以这个方法要处理异常
        SimpleDateFormat n = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        Date date = new Date();
        date = n.parse("2021-02-06 16:57:48");
        System.out.println(date);
    }

    private static void demo01() {
//    创建SimpleDateFormat对象,然后在构造方法中传递指定模式,里面的字母都是唯一确定的,查csdn
        SimpleDateFormat a = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        Date date = new Date();
        String b = a.format(date);
        System.out.println(date);
        System.out.println(b);



    }
}

Calendar(日历类)

package Sha.day1;

import java.util.Calendar;
import java.util.Date;

/**
 * @author 
 * 是一个抽象类,无法直接创建对象
 * statuc Calendar getInstance()使用默认时区和语言环境获得一个日历
 *
 * 成员方法:
 *public int get(int field)返回给定日历字段的值。
 * public void set(int field,int value)将给定的日历字段设置为给定的值。
 * public final Date getTime()返回一个 Date表示此物体 Calendar的时间值(毫秒从偏移 Epoch “)。
 * public abstract void add(int field, int amount)根据日历的规则,为给定的日历字段添加或减去指定时间量
 */
public class MyCalendar {//日历转为日期
    public static void main(String[] args) {
        Calendar a = Calendar.getInstance();
        System.out.println(a);

        demo1();
        demo2();
        demo3();
        demo4();
    }

    private static void demo4() {
        Calendar instance = Calendar.getInstance();
        Date time = instance.getTime();
        System.out.println(time);
    }

    private static void demo3() {
//        正:增加    负:减少
        Calendar instance = Calendar.getInstance();
        instance.add(Calendar.MONTH,1);
        int i = instance.get(Calendar.MONTH);
        System.out.println(i);

    }

    private static void demo2() {
        Calendar instance = Calendar.getInstance();
        instance.set(Calendar.YEAR, 20);//把年份设置为20,也可以一次性设置多个
        int i = instance.get(Calendar.YEAR);
        System.out.println(i);
    }

    private static void demo1() {
        Calendar instance = Calendar.getInstance();
        int i = instance.get(Calendar.YEAR);
        System.out.println(i);


        int v = instance.get(Calendar.MONTH);
        System.out.println(v);//西方月份0-11

    }
}

System

package Sha.day1;

import java.util.Arrays;

/**
 * @author 
 * public static void arraycopy(Object src,int srcPos,Object dest,int destPos,int length)
 * 将指定源数组中的数组从指定位置复制到目标数组的指定位置。
 * src - 源数组。
 * srcPos - 源数组中的起始位置。
 * dest - 目标数组。
 * destPos - 目的地数据中的起始位置。
 * length - 要复制的数组元素的数量。
 * public static long currentTimeMillis()
 * 返回当前时间(以毫秒为单位)。用来测试程序效率
 */
public class MySystem {
    public static void main(String[] args) {
        //demo01();
        demo02();
    }

    private static void demo02() {
        int[] a = {4,4,5,8,1};//起始
        int[] b = {4,4,5,8,9};//结束
        System.out.println(Arrays.toString(b));//遍历
        System.arraycopy(a, 2, b, 2,3);
        System.out.println(Arrays.toString(b));
    }

    private static void demo01() {
//        程序执行前获取一次毫秒值
        long l = System.currentTimeMillis();
        for (int i = 0; i <545999; i++) {
            System.out.println(i);

        }
//        程序执行后再获取一次
        long e = System.currentTimeMillis();
        System.out.println(e-l);
    }
}
posted @ 2022-03-30 19:04  Tzeao  阅读(30)  评论(0)    收藏  举报