深入JAVA:Math方法、Scanner输入、枚举与大数操作解析

需积分: 9 2 下载量 65 浏览量 更新于2024-10-19 收藏 59KB DOC 举报
"这是一份全面的JAVA学习笔记,涵盖了基础到高级的JAVA知识,包括Math类中的数学函数、枚举类型、Scanner类的输入处理、JOptionPane对话框的使用、System类的退出方法,以及JAVA 5.0后的printf格式化输出。此外,还涉及了日期的格式化和大数值类BigInteger与BigDecimal的使用。" 在JAVA编程中,`java.lang.Math`类是基础数学运算的重要工具,提供了如平方根(`sqrt`)、指数(`pow`)、三角函数(`sin`, `cos`, `tan`, `atan`, `atan2`)、指数和对数(`exp`, `log`)以及常量`PI`和`E`等。这些方法都接受`double`类型的参数,且为静态方法,可以直接通过`Math`类调用,例如`Math.sqrt(9)`将返回3.0。 枚举类型(`enum`)在JAVA中是一种特殊的类,它不能在方法内部定义,只能作为类的成员。枚举常用于定义一组固定的值,比如一周的天数或颜色的类型。 `java.util.Scanner`类是进行用户输入处理的关键,它可以读取标准输入流。例如,`Scanner scanner = new Scanner(System.in);`可以创建一个从控制台读取输入的`Scanner`对象。`nextLine()`用于读取一行文本,`next()`读取一个单词,`nextInt()`和`nextDouble()`分别用于读取整数和浮点数,`hasNext*()`方法则用来检查输入流中是否有特定类型的值。 `javax.swing.JOptionPane`是GUI编程中常用的组件,用于显示简单的对话框。`showInputDialog`方法可以显示一个带有提示信息的对话框,并获取用户的输入。 `java.lang.System.exit(int status)`方法用于退出Java虚拟机,`status`参数通常用于表示程序的退出状态,非零值通常表示程序异常结束。 从JDK 5.0开始,JAVA引入了C语言风格的`printf`方法,可以方便地进行格式化输出。`String.format`方法也可以创建格式化的字符串,但不会立即输出,而`printf`会直接打印到控制台。例如,`System.out.printf("%d %s", 123, "Hello");`将输出"123 Hello"。 在处理大数值时,JAVA提供了`java.math.BigInteger`和`java.math.BigDecimal`类。`BigInteger`用于任意精度的整数运算,而`BigDecimal`则适用于需要精确浮点数运算的场景。这两个类都提供了如加法(`add`)、减法(`subtract`)、乘法(`multiply`)等操作,可以避免浮点数运算中的精度损失问题。例如,`BigInteger bigInt1 = BigInteger.valueOf(123); BigInteger bigInt2 = BigInteger.valueOf(456); BigInteger sum = bigInt1.add(bigInt2);`将计算出123 + 456的结果。 这份JAVA学习笔记全面介绍了JAVA编程的基础知识,对于初学者和进阶开发者来说都是非常有价值的参考资料。