栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Java学习总结(常用API)Math System Objects BigDecimal

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Java学习总结(常用API)Math System Objects BigDecimal

文章目录
  • 常用的API
      • 1、Math
          • ①.Math类概述
          • ②.Math中方法的调用方式
          • ③.Math类的常用方法
      • 2、System
          • System类常用的方法
          • 示例代码
      • 3、ObjectObjects
          • Object类概述
          • Object类重写toString方法
          • Object类的equals方法
          • Objects常用的方法
      • 4、BigDecimal
          • 作用
          • 构造方法
          • 常用方法
          • 总结


常用的API 1、Math ①.Math类概述
  • Math 包含执行基本数字运算的方法
②.Math中方法的调用方式
  • Math类中无构造方法,但内部的方法都是静态的,则可以通过 类名.进行调用
③.Math类的常用方法

2、System System类常用的方法

示例代码
//需求:在控制台输出1-10000,计算这段代码执行了多少毫秒 
public class SystemDemo {
    public static void main(String[] args) {
        // 获取开始的时间节点
        long start = System.currentTimeMillis();
        for (int i = 1; i <= 10000; i++) {
            System.out.println(i);
        }
        // 获取代码运行结束后的时间节点
        long end = System.currentTimeMillis();
        System.out.println("共耗时:" + (end - start) + "毫秒");
    }
}
3、ObjectObjects Object类概述
  • Object 是类层次结构的根,每个类都可以将 Object 作为超类。所有类都直接或者间接的继承自该类,换句话说,该类所具备的方法,所有类都会有一份
Object类重写toString方法
class Student extends Object {
    private String name;
    private int age;

    public Student() {
    }

    public Student(String name, int age) {
        this.name = name;
        this.age = age;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public int getAge() {
        return age;
    }

    public void setAge(int age) {
        this.age = age;
    }

    @Override
    public String toString() {
        return "Student{" +
                "name='" + name + ''' +
                ", age=" + age +
                '}';
    }
}
public class ObjectDemo {
    public static void main(String[] args) {
        Student s = new Student();
        s.setName("林青霞");
        s.setAge(30);
        System.out.println(s); 
        System.out.println(s.toString()); 
    }
}
  • 运行结果
Student{name='林青霞', age=30}
Student{name='林青霞', age=30}
Object类的equals方法
  • equals方法的作用
    • 用于对象之间的比较,返回true和false的结果
    • 举例:s1.equals(s2); s1和s2是两个对象
  • 重写equals方法的场景
    • 不希望比较对象的地址值,想要结合对象属性进行比较的时候。
  • 重写equals方法的方式
    • 1.alt + insert 选择equals() and hashCode(),IntelliJ Default,一路next,finish即可
    • 2.在类的空白区域,右键 -> Generate -> 选择equals() and hashCode(),后面的同上。
  • 示例代码:
class Student {
    private String name;
    private int age;

    public Student() {
    }

    public Student(String name, int age) {
        this.name = name;
        this.age = age;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public int getAge() {
        return age;
    }

    public void setAge(int age) {
        this.age = age;
    }

    @Override
    public boolean equals(Object o) {
        //this -- s1
        //o -- s2
        if (this == o) return true;
        if (o == null || getClass() != o.getClass()) return false;

        Student student = (Student) o; //student -- s2

        if (age != student.age) return false;
        return name != null ? name.equals(student.name) : student.name == null;
    }
}
public class ObjectDemo {
    public static void main(String[] args) {
        Student s1 = new Student();
        s1.setName("林青霞");
        s1.setAge(30);

        Student s2 = new Student();
        s2.setName("林青霞");
        s2.setAge(30);

        //需求:比较两个对象的内容是否相同
        System.out.println(s1.equals(s2));
    }
}

Objects常用的方法

  • 示例代码

  • 学生类

class Student {
      private String name;
      private int age;

      public Student() {
      }

      public Student(String name, int age) {
          this.name = name;
          this.age = age;
      }

      public String getName() {
          return name;
      }

      public void setName(String name) {
          this.name = name;
      }

      public int getAge() {
          return age;
      }

      public void setAge(int age) {
          this.age = age;
      }

      @Override
      public String toString() {
          return "Student{" +
                  "name='" + name + ''' +
                  ", age=" + age +
                  '}';
      }
  }
  • 测试类
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);
      //        System.out.println(s);

      //        public static String toString(对象, 默认字符串): 返回对象的字符串表示形式。如果对象为空,那么返回第二个参数.
              //Student s = new Student("小花同学",23);
      //        Student s = null;
      //        String result = Objects.toString(s, "随便写一个");
      //        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.nonNull(s);
              System.out.println(result);
          }
  }
4、BigDecimal 作用
  • 可以用来进行精确计算
构造方法

常用方法

总结
  • ①、BigDecimal是用来进行精确计算的
  • ②、创建BigDecimal的对象,构造方法使用参数类型为字符串的。
  • ③、四则运算中的除法,如果除不尽请使用divide的三个参数的方法。
  • 代码示例
BigDecimal divide = bd1.divide(参与运算的对象,小数点后精确到多少位,舍入模式);
	参数1 ,表示参与运算的BigDecimal 对象。
	参数2 ,表示小数点后面精确到多少位
	参数3 ,舍入模式  
  BigDecimal.ROUND_UP  进一法
  BigDecimal.ROUND_FLOOR 去尾法
  BigDecimal.ROUND_HALF_UP 四舍五入
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/1020937.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号