Java--工具类、日期、数字类

灰太狼 2024-04-08 11:04 157阅读 0赞

掌握Java中的常用类中的方法,并熟练运用

文章目录

    • 日期类
    • 数字类
    • 数学类
    • 随机数
    • 枚举

日期类

日期类在开发中应用广泛,熟练运用常用类: java.text.SimpleDateFormat; java.util.Calendar;java.util.Date;

  • 获取系统时间

    System.out.println(new Date());

  • 日期类型转化为String类型的日期字符串

    //创建SimpleDateFormat 类型对象,用于格式化日期

    1. SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm");
    2. //调用format()方法格式化
    3. System.out.println(sdf.format(new Date()));
    4. System.out.println(sdf.format(new Date(1000)));
    5. //long date 参数表示“自1970-01-01 00:00”以来的毫秒,北京时间是东八区,比标准时间格林威治块8小时
  • String类型的日期字符串转化为日期类型

    String date = “2078-12-12 03:11”;

    1. Date date1 = sdf.parse(date);
    2. System.out.println(date1);
  • 获取一天的毫秒数

    Date date2 = new Date(System.currentTimeMillis() - 1000 60 60 * 24);

    1. System.out.println("当前时间:"+sdf.format(new Date()));
    2. System.out.println("昨天的这个时候:"+sdf.format(date2));
  • 计算一个程序执行所耗费时长

    long l = System.currentTimeMillis();

    1. for (int i = 0; i < 100000; i++) {
  1. }
  2. long e = System.currentTimeMillis();
  3. System.out.println("耗费"+(e-l)+"毫秒");
  • 借助日历类获取一个日期是星期几

    //获取日历对象

    1. Calendar c = Calendar.getInstance();
    2. //让日历关联某一天的日期
    3. c.setTime(sdf.parse("2022-12-12 12:12"));
    4. //获取星期几
    5. System.out.println("该日期是一个周的第"+c.get(Calendar.DAY_OF_WEEK)+"天");
    6. System.out.println("该日期是一个月的第"+c.get(Calendar.DAY_OF_MONTH)+"天");

数字类

  • 创建数字格式化对象

    //###,###.00000表示加入千分位,保留5位数,不够补0

    1. DecimalFormat decimalFormat = new DecimalFormat("###,###.00000");
    2. //调用format方法完成数字格式化,返回数字格式化周会的字符串
    3. System.out.println(decimalFormat.format(12345231.2219));
  • 高精度 BigDecimal

    //高精度 BigDecimal

    1. BigDecimal d = new BigDecimal(100.222);
    2. BigDecimal d1 = new BigDecimal(200.222);
    3. //+
    4. System.out.println(d.add(d1));
    5. //-
    6. System.out.println(d.subtract(d1));
    7. //*
    8. System.out.println(d.multiply(d1));
    9. //
    10. try {
    11. System.out.println(d.divide(d1));
    12. } catch (Exception e) {
    13. System.out.println("出现除不断的情况,可能会出现算术异常");
    14. }

数学类

数学中常用的类:

  1. System.out.println(Math.sqrt(3));//平方根
  2. System.out.println(Math.cbrt(3));//立方根
  3. System.out.println(Math.pow(2, 3));//2的3次方
  4. System.out.println(Math.abs(-2));//绝对值
  5. System.out.println(Math.ceil(10.6));//向上取整
  6. System.out.println(Math.floor(10.6));//向下取整
  7. System.out.println(Math.rint(3.15));//四舍五入返回double类型
  8. System.out.println(Math.round(3.15));//四舍五入返回int类型

随机数

  1. System.out.println(Math.random()); //大于0.0小于1.0的随机数
  2. System.out.println(Math.random()*100); //0-100的随机整数
  3. System.out.println(Math.round(Math.random()*100)); //0-100的随机整数
  • 在[0-4]之间生成5个不同的随机数

    import java.util.Random;
    public class text03 {

    1. public static void main(String[] args) {
    2. Random random = new Random();
    3. int[] arr = new int[5];//默认值为0 与随机数区分不开
    4. //初始化数组中元素为-1
    5. for (int i = 0; i < arr.length; i++) {
    6. arr[i] = -1;
    7. }
    8. //定义数组下标
    9. int index = 0;
    10. while(index<arr.length) {
    11. int num = random.nextInt(101);
    12. if (!contains(arr,num)) {
    13. arr[index] = num;
    14. index++;
    15. }
    16. }
    17. for (int k: arr
    18. ) {
    19. System.out.print(k+" ");
    20. }
    21. }
    22. //判断数组中是否包含某个元素 即数组不重复的数
    23. public static boolean contains(int[] arr,int a){
    24. for (int i = 0; i < arr.length; i++) {
    25. if(arr[i]==a){
    26. return true;
    27. }
    28. }
    29. return false;
    30. }

    }

枚举

  • 枚举是一种引用数据类型。
  • 当一个方法的执行结果可以列举出来,结果是两种建议返回布尔类型,多于两种且可列举返回枚举类型(例如颜色、星期)。
  • 语法格式

    public enum 类型名{

    1. 枚举值1,枚举值2,枚举值3

    }

    public class test01 {

    1. public static void main(String[] args) {
    2. Scanner scanner = new Scanner(System.in);
    3. int a = scanner.nextInt();
    4. switch (a){
    5. case 1:
    6. System.out.println(Season.SPRING);
    7. break;
    8. case 2:
    9. System.out.println(Season.SUMMER);
    10. break;
    11. case 3:
    12. System.out.println(Season.AUTUMN);
    13. break;
    14. case 4:
    15. System.out.println(Season.WINTER);
    16. break;
    17. }
    18. }
    19. //一枚一枚列举出来的,建议使用本类型
    20. enum Season{
    21. //枚举Result类型的值
    22. SPRING,SUMMER,AUTUMN,WINTER
    23. }

    }

发表评论

表情:
评论列表 (有 0 条评论,157人围观)

还没有评论,来说两句吧...

相关阅读

    相关 Java 日期工具

            项目中的订单统计需求,分别是按日,周,月,年统计订单数量及订单总额。其中,遇到了各种时间的获取,下面总结了一些较全的Java获取不同时间以及不同时间格式的相互