自学Java Day15【JAVA教程】

!
也想出现在这里? 联系我们
信息

自学Java Day15,第1张

学习目标:

  • API 
  • object类
  • objects类
  • BigDecimal类

学习内容:
1、Math 类概述

Math包含执行基础数字运算方法

public class math {
    public static void main(String[] args) {
        //public static int abs(int a)      返回参数的绝对值
        int abs = Math.abs(-10);
        System.out.println(abs);

        //public static double ceil(double a)   向上取整
        double ceil = Math.ceil(10.1);
        System.out.println(ceil);

        //public static double floor(double a)    向下取整
        double floor = Math.floor(10.6);
        System.out.println(floor);

        //public static int round(float a)      四舍五入
        long round = Math.round(10.1);
        System.out.println(round);

        //public static int max(int a,int b)   返回两个int值中的最大值
        int max = Math.max(10,20);
        System.out.println(max);

        //public static int min(int a,int b)   返回两个int值中的最小值
        int min = Math.min(10, 20);
        System.out.println(min);

        //public static double pow(double a,double b)  返回a的b次幂的值
        double pow = Math.pow(2, 4);
        System.out.println(pow);

        // public static double random()    返回值为double的正值,[0,0,1,0] 随机数
        for (int i = 0; i < 10; i++) {
            double random = Math.random();
            System.out.println(random);
        }
    }
}

2、System

public class System {

    public static void main(String[] args) {
        //public static void exit (int status)  终止当前运行的Java虚拟机非零表示异常终

        //public static long currentTimeMillis() 返回当前时间(以毫秒为单位)
        long start = System.currentTimeMillis();
        for(int i = 0; i < 10000; i++){
            System.out.println(i);
        }
        long end = System.currentTimeMillis();
        System.out.println(end - start);

        //arraycopy(数据源数组,起始索引,拷贝个数)
        int [] arr1 = {1,2,3,4,5};
        int [] arr2 = new int[10];
        //需求:要把arr1数据拷贝到arr2
        System.arraycopy(arr1,0,arr2,0,arr1.length);
        for (int i = 0; i < arr2.length; i++) {
            System.out.println(arr2[i]);
        }
    }
}

3、object类

Object类的toString方法得到的是对象的返回值一般要对toObject方法进行重写。

常用方法

public String toString()  返回对象的字符串表示形式,建议所有子类的重写方法,自动生成

public boolean equals(另一个对象)  比较对象是否相等,默认比较地址,重写可以比较内容,自动生成。

面试题

public class Interview {
    public static void main(String[] args) {
        String s1 = \"abc\";
        StringBuilder sb = new StringBuilder(\"abc\");

        //调用的String类中的equals方法,所以保证参数也是字符串,否则会传回false
        System.out.println(s1.equals(sb));
        //StringBuilder类中没有equals方法,所以就用object类中的方法,地址不一样所以为false
        System.out.println(sb.equals(s1));
    }
}

4、Objects类常用方法

public class MyObjectsDemo {
    public static void main(String[] args) {
        //public static String toString(对象)   返回参数中对象的字符串表现形式
        //Student s = new Student(\"小罗同学\",50);
        //String result = Objects.toString(s);
        //System.out.println(result);

        //public static String toString(对象,默认字符串)    返回对象的字符串表现形式
        //Student s1 = new Student(\"小花同学\",23);
        //Student s1 = null;
        //String result = Objects.toString(s1, \"随便写一个\");
        //System.out.println(result);

        //public static Boolean isNull(对象)      判断对象是否为空
        //Student s = null;
        //Student s = new Student();
        //boolean result = Objects.isNull(s);
        //System.out.println(result);

        //public static Boolean nonNull(对象)     判断对象是否不为空,与上面相反
        //Student s = new Student();
        //Student s = null;
        //boolean result = Objects.isNull(s);
        //System.out.println(result);
    }
}

 5、BigDecimal类

BigDecimal 类的构造方法

BigDecimal(double val)               参数double

BigDecimal(double val)               参数String

public class Demo1 {
    public static void main(String[] args) {
        //如果想进行精确运算,那么请使用字符串的构造
        //BigDecimal bd1 = new BigDecimal(0.1);
        //BigDecimal bd2 = new BigDecimal(0.2);
        BigDecimal bd1 = new BigDecimal(\"0.1\");
        BigDecimal bd2 = new BigDecimal(\"0.2\");
        //public BigDecimal add(另一个BigDecimal对象)  加法
        BigDecimal add = bd1.add(bd2);
        System.out.println(\"和为\" + add);
        //System.out.println(0.1 + 0.2);

        //public BigDecimal subtract(另一个BigDecimal对象)  减法
        BigDecimal subtract = bd1.subtract(bd2);
        System.out.println(\"差为\" + subtract);

        //public BigDecimal multiply(另一个BigDecimal对象)  乘法
        BigDecimal multiply = bd1.multiply(bd2);
        System.out.println(\"积为\" + multiply);

        //public BigDecimal divide (另一个BigDecimal对象)   除法
        BigDecimal divide = bd1.divide(bd2);
        System.out.println(\"商为\"+ divide);
    }
}

 

 


© 版权声明
THE END
喜欢就支持一下吧
点赞170 分享
评论 抢沙发

请登录后发表评论

    请登录后查看评论内容