Java 中常见的内部类

Math 类

数学类

Java 提供用来处理和计算复杂数学运算的类,Math

Math 类常见方法
需要说明的是 Math 类是被 final 修饰的,因此我们无法通过书写子类来继承它,同时 Math 也无法创建,因为它的构造方法为私有

    /**
     * Don't let anyone instantiate this class.
     */
    private Math() {}

可以开发 Math 方法的人并不像让使用者对它进行实例化,那么我们该如何使用其中的方法呢,好在 Math 类的所有方法提供了 static 静态访问,因此我们可以在不创建对象的情况下,调用这些静态方法。

  • PI // 圆周率
  • E // 自然常数,属性
  • abs(num) // 返回num值的绝对值
  • ceil(a) // 向上取整
  • floor(a) // 向下取整
  • sqrt(a) // 获得到平方根
  • cbrt(a) // 开立方根
  • random() // 获取一个 [0, 1) 的值(可以的到 0 是因为可能会随机到 0.00000000 000001 位数太多只取前面的值)
    public static void main(String[] args) {
        System.out.println(Math.PI);
        System.out.println(Math.E);
        System.out.println(Math.abs(-1));
        System.out.println(Math.abs(1));
        System.out.println(Math.ceil(4.4));
        System.out.println(Math.floor(4.4));
        System.out.println(Math.sqrt(9));
        System.out.println(Math.cbrt(27));
        System.out.println(Math.random());
    }
3.141592653589793
2.718281828459045
1
1
5.0
4.0
3.0
3.0
0.08017803379567279

Math.random() 类的应用
获取到 [10~30) 之间的随机数

public class Test {
    public static void main(String[] args) {
        test(10, 30);
    }
    public static void test(int a, int b) {
        for (int i = 0; i < 100; i++) {
            int random = (int)(Math.random() * 20) + 10;//Math.random() * (b-a)*a
            System.out.println(random);
        }
    }
}

Scanner 类

Scanner 是个 IO 流,使用完毕需要关闭。
Scanner 类和 Math 类一样也是用 final 进行修饰的,因此他也无法被子类继承。

public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        int i = scanner.nextInt();//接收一个整型
        String s = scanner.nextLine();//接受一段字符串
        double v = scanner.nextDouble();//接收浮点型
        boolean b = scanner.nextBoolean();//接收布尔型
    }

Random 类

随机数:计算机中随机数都是伪随机数(是通过特定得算法得到得虽然这个算法得到得数足够离散)

        Random random = new Random(100);
        for (int i = 0; i < 100; i++) {
            double v = random.nextInt();
            System.out.println("v = " + v);
        }

Random 提供一个构造方法,seed 表示生成的随机数的离散状态。

String 类(字符串对象)

java.lang.String

字符串:字符连在了一起,形成了字符串。

人的肉眼可以识别分符号

在 Java 中,一般表现为 “”,引号的内部内容就是字符串

在 Java 中,字符串是引用数据类型(对象)

定义字符串:

String s = “this is a book!”;

第二种定义方式

new String() // 获取字符串

String ss = new String(); // 等价于 “”

注意:字符串不要使用等于 String ss = new String(“a”) 中创建了几个对象?

答案:一个或者两个,如果在常量池中存在 “a” 就会创建一个对象,如果没有就会创建一个 “a” 同时又会在堆中创建一个 ss 对象的地址。
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值