day14 Java学习(常见对象)

常见对象(Math 类)

  Math: 用于执行基本数学运算的方法,如初等指数,对数,平方根,三角函数。

  

System.out.println(Math.abs(-15.2));         // Math.abs()      取绝对值。
   System.out.println(Math.ceil(15.3));         // Math.ceil()     结果向上取整,是double类型。
   System.out.println(Math.floor(12.9));        // Math.ceil()     结果向下取整,是double类型。
   System.out.println(Math.max(-16.2, 16.1));   // Math.max()     比较结果大小,取最大值
   System.out.println(Math.min(-16.2, 16.1));   // Math.min()     比较结果大小,取最小值
   System.out.println(Math.pow(1,10 ));         // Math.pow()     取前面位置的次方,是double类型。
   System.out.println(Math.random());           //随机生成0.0到1.0之间的小数,包括0.0,不包括1.0。
   System.out.println(Math.round(15.8));        //四舍五入。
   System.out.println(Math.sqrt(9));            //参数的平方根。
成员方法

 常见对象(Random类)

    Random:此类用于生产随机数。

  

Random r = new Random();                 //无参的。
        int a = r.nextInt();             //随机生成正负数。
        System.out.println(a);            
               
        int x = r.nextInt(100);          // 随机生成0到n-1d的随机数,
        System.out.println(x);
        

Random d = new Random(1000);             //有参的。
        int b= d.nextInt();              //如果输出变量不变随机生成的数也不变。
        System.out.println(b);

成员方法
成员方法

 常见对象(System类)

     System:包含一些有用的类字段和方法。它不能被实例化。 

     在一个源文件中不允许定义两个用 public 修饰的类

System.exit(0);                                 //非0状态是异常终止,推出jvm

        long start = System.currentTimeMillis();        // 获取当前时间的毫秒值。
        for (int i = 0; i < 1000; i++) {
            System.out.println("*");
        }
        long end = System.currentTimeMillis();
        System.out.println(end - start);               // 计算当前方法所用的时间。

        int[] src = { 22, 55, 44, 6 };
        int[] dest = new int[8];
        System.arraycopy(src, 0, dest, 0, src.length); // 将数组内容拷贝

成员方法
成员方法

 

常见对象(BigInteger类)

   概述: 可以让超过 Integer 范围内的数据进行运行。

  构造方法: public BigInteger( String val )

  

BigInteger b1 = new BigInteger("2"); 
        BigInteger b2 = new BigInteger("1");
        System.out.println(b1.add(b2));             //  +
        System.out.println(b1.subtract(b2));        //  -
        System.out.println(b1.multiply(b2));        //  * 
        System.out.println(b1.divide(b2));          //  /(除)
        BigInteger [] arr= b1.divideAndRemainder(b2);//取除数h和余数
        for (int i = 0; i < arr.length; i++) {
        System.out.println(arr[i]);
        
    }

成员方法
成员方法

常见对象(BigDecimal类)

    概述: 由于在运算时,floa 和 double 很容易丢失精度,所以为了精确表示,Java提供了BigDecimal。            

    构造方法: public BigDecimal( String val )

    

BigDecimal b=new BigDecimal("2");     //通过构造传入字符串方式,开发时推荐
         BigDecimal b1=new BigDecimal("1.1");
         System.out.println(b.subtract(b1));
          //通过类名 . 调用valueOf()方法
         BigDecimal a = BigDecimal.valueOf(7); // 这种方式在开发也是推荐的
         BigDecimal a1=BigDecimal.valueOf(1.1);
         System.out.println(a.subtract(a1));

成员方法
成员方法

常见对象(Date类)

    Date类是 util包 的,不能导入 Sql包的

            *Date表示特定的瞬间,精确到毫米

     构造方法:
                     public Date( )
                     public Date(long date)

        Date d1 = new Date();                              //如果没有传参数,代表的是当前时间。
        System.out.println(d1.getTime());                  // getTime()  通过时间对象获取毫秒值
        System.out.println(System.currentTimeMillis());    //通过系统类的方法获取当前时间毫秒值
        
        d1.setTime(1000);                                  // 设置毫秒值,改变时间对象。
        System.out.println(d1);
        
        Date d2 = new Date(0);                             //如果参数为0, 代表的是1970年一月一日。
        System.out.println(d2);                            //通过毫秒值,创建时间对象。
成员方法

常见对象(SimpleDateFormat类)

   DateFormat类的概述:

                  *DateFormat是日期/格式化子类的抽象,它以语言无关的方式格式化并解析日期或时间。是抽象类,无法New对象。所以使用其子类SimpleDateFormat。

     SimpleDateFormat构造方法:

                    public SimpleDateFormat( )
                    public SimpleDateFormat(String pattern)

   成员方法:

                    public  final String format ( Date date )    

                    public  Date parse ( String  source )

  

        Date d = new Date();                                                  // 获取当前时间
        SimpleDateFormat sdf = new SimpleDateFormat("yyyy/MM/dd HH:mm :ss");  // 创建日期格式化对象
        System.out.println(sdf.format(d));                                    //format() 将日期对象转化为字符串
        
          
        String sj="2019年05月25日 08:08:08";
        SimpleDateFormat sdf1=new SimpleDateFormat("yyyy年MM月dd日 HH:mm:ss"); 
        Date d1=sdf1.parse(sj);                                               // parse() 将时间字符串转换成日期对象 
        System.out.println(d1);
成员方法
//需求:计算出生多少天 
        // 将出生日期和今天日期存在String类型变量中
        String birthday = "1996年07月12日";
        String today = "2019年05月25日";
        // 定义日期格式化对象
        SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日");
        // 将日期字符串转换日期对象
        Date d1 = sdf.parse(birthday);
        Date d2 = sdf.parse(today);
        // 通过日期对象获取时间毫秒值
        long time = d2.getTime() - d1.getTime();
        // 将其相减除以1000,再除以60,再除以60,再除以24得到天
        long Day = time / 1000 / 60 / 60 / 24;
        System.out.println(Day);
练习题

  常见对象(Calendar类)

       概述:Calendar是一个抽象类,它为特定瞬间与一组注入 :YEAR,MONTH,DAY_OF_MONTH,HOUR等日历字段自建的转换提供了一些方法。

    成员方法:

         * public static Calendat getInstance( )

         * public int  get (int field )

    

        Calendar a = Calendar.getInstance();              // 父类引用指向子类对象
        System.out.println(a.get(Calendar.YEAR));         // 通过字段获取年
        System.out.println(a.get(Calendar.MONTH) + 1);    // 通过字段获取月份(月份是从0开始编号的)
        System.out.println(a.get(Calendar.DAY_OF_MONTH)); // 通过字段获取月份的某一天
        System.out.println(a.get(Calendar.DAY_OF_WEEK));  // 周日是第一天,周六最后一天
成员方法
while (true) {
       Scanner S= new Scanner(System.in);
        System.out.println("请输入年份");
        String line =S.nextLine();
        int year = Integer.parseInt(line); // 将数字字符串转换为数字
        boolean b=getYear(year);
        if (b==true) {
            System.out.println("闰年");
        }else {
            System.out.println("平年");
} 
}      
}

private static boolean getYear(int year) {
        // TODO 自动生成的方法存根
        Calendar c = Calendar.getInstance();
        // 设置那一年的3月一日
        c.set(year, 2, 1);
        c.add(Calendar.DAY_OF_MONTH, -1);
        //判断是否是29天
        return c.get(Calendar.DAY_OF_MONTH)==29;
    }
练习
// 创建日期格式化对象
原文地址:https://www.cnblogs.com/feng0001/p/10921015.html