美文网首页
常用API三——Arrays、Random、Date

常用API三——Arrays、Random、Date

作者: 嗷老板 | 来源:发表于2018-02-27 21:40 被阅读0次

    一、Arrays类

      Arrays类是数组的工具类,用来操作数组(比如排序和搜索)的各种方法。

    1、构造方法

      通过查看帮助文档,我们发现Arrays类中并没有构造方法,但是我们说一个类中如果没有构造方法,系统将自动给他提供一个无参的构造方法,那么为什么帮助文档中查询不到构造方法呢?
      通过查看Arrays的源码,我们找到了如下内容:

        private Arrays(){}
    

      原来Arrays类中并不是没有构造方法,而是被private修饰,我们无法使用,因此帮助文档中也就没有该类的构造方法了。
      由于Arrays类中没有构造方法,所以我们在使用Arrays类中的方法时,直接通过Arrays.方法名()调用。

    补充:

      工具类的设计思想:
      (1)构造方法用private修饰;
      (2)成员都用static修饰,可以直接使用类名调用。
      常见的工具类:Math、Collections

    2、成员方法

    (1)sort()

      返回值类型:void
      参数列表:任意类型的数组
      作用:对传入的数组按升序排序

        import java.util.Arrays;
    
        public class ArraysDemo {
            public static void main(String[] args) {
                int[] arr = {1,5,3,6,2};
                Arrays.sort(arr);
                for (int i = 0; i < arr.length; i++) {
                    System.out.println(arr[i]);
                }
            }
        }
    

    (2)toString()

      返回值类型:String
      参数列表:任意类型的数组
      作用:返回指定类型数组的字符串表达形式

        import java.util.Arrays;
    
        public class ArraysDemo {
            public static void main(String[] args) {
                int[] arr = {1,5,3,6,2};
                String s = Arrays.toString(arr);
                System.out.println(s);//[1, 5, 3, 6, 2]
            }
        }
    

    (3)equals()

      返回值类型:boolean
      参数列表:两个相同类型的数组
      作用:比较两个数组的元素是否相等

        import java.util.Arrays;
    
        public class ArraysDemo {
            public static void main(String[] args) {
                int[] arr1 = {1,5,3,6,2};
                int[] arr2 = {1,5,3,6,2};
                int[] arr3 = {8,5,9,6,2};
                boolean b1 = Arrays.equals(arr1, arr2);
                boolean b2 = Arrays.equals(arr1, arr3);
                System.out.println(b1);//true
                System.out.println(b2);//false
            }
        }
    

    二、Random类

      Random类用来生成随机数。

    1、构造方法

        public Random(){}
    

    2、成员方法nextInt()

      返回值类型:int
      参数列表:int
      作用:产生[0,int)范围中的一个随机数

        Random r = new Random();
        int i = r.nextInt();
        System.out.println(i);
    

    三、Date类

    1、构造方法

    (1)public Date()

      分配 Date 对象并初始化此对象,以表示分配它的时间(精确到毫秒)。

        Date date = new Date();
    

    (2)public Date(long date)

    分配 Date 对象并初始化此对象,以表示自从标准基准时间(称为“历元(epoch)”,即 1970 年 1 月 1 日 00:00:00 GMT)以来的指定毫秒数。

        Date date = new Date(1000);
        System.out.println(date);//Thu Jan 01 08:00:01 CST 1970
    

    2、成员方法

    (1)getTime()

      返回值类型:long
      参数列表:无参
      作用:获取从1970 年 1 月 1 日 00:00:00到日期对象的毫秒值

        public class DateDemo {
            public static void main(String[] args) {
                Date date = new Date();
                long time = date.getTime();
                System.out.println(time);
            }
        }
    

    (2)setTime()

      返回值类型:void
      参数列表:long time
      作用:设置时间,1970 年 1 月 1 日 00:00:00加上参数中的毫秒值

        public static void main(String[] args) {
                Date date = new Date();
                long time = 1000*60*60L;
                date.setTime(time);
                System.out.println(date);
            }
        }
    

    3、SimpleDateFormat类

      SimpleDateFormat 是一个以与语言环境有关的方式来格式化和解析日期的具体类。它允许进行格式化(日期 -> 文本)、解析(文本 -> 日期)和规范化。

    (1)构造方法

    • 无参构造:
        用默认的模式和默认语言环境的日期格式符号构造 SimpleDateFormat。
        public SimpleDateFormat()
    
    • 有参构造:
        用给定的模式(pattern)和默认语言环境的日期格式符号构造 SimpleDateFormat。
        public SimpleDateFormat(String pattern)
    

      pattern的格式:


    字母含义

    (2)格式化(Date --> String)

        public class DateDemo {
            public static void main(String[] args) {
                Date date = new Date();
                String s = "yyyy-MM-dd HH:mm:ss";
                SimpleDateFormat sdf = new SimpleDateFormat(s);
                String format = sdf.format(date);
                System.out.println(format);
            }
        }
    

    (3)解析(String --> Date)

        public class DateDemo {
            public static void main(String[] args) throws ParseException {
                String time = "2018-02-27 22:00:00";
                String s = "yyyy-MM-dd HH:mm:ss";
                SimpleDateFormat sdf = new SimpleDateFormat(s);
                Date date = sdf.parse(time);
                System.out.println(date);
            }
        }
    

    相关文章

      网友评论

          本文标题:常用API三——Arrays、Random、Date

          本文链接:https://www.haomeiwen.com/subject/fnqpxftx.html