常用API

本文深入解析Java中基本类型包装类、System类、Math类、Arrays类及大数据运算类BigInteger的功能与应用,涵盖字符串与基本数据类型转换、系统属性操作、数学运算、数组操作及大数据处理技巧。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  1. 基本类型包装类
  2. System
  3. Math
  4. Arrays
  5. BigInteger

 

  1. 基本类型包装类概述

在实际程序使用中,程序界面上用户输入的数据都是以字符串类型进行存储的。而程序开发中,我们需要把字符串数据,根据需求转换成指定的基本数据类型,如年龄需要转换成int类型,考试成绩需要转换成double类型等。那么,想实现字符串与基本数据之间转换怎么办呢?

Java中提供了相应的对象来解决该问题,基本数据类型对象包装类:java将基本数据类型值封装成了对象。封装成对象有什么好处?可以提供更多的操作基本数值的功能。

 

    2.System类

在API中System类介绍的比较简单,我们给出定义,System中代表程序所在系统,提供了对应的一些系统属性信息,和系统操作。

System类不能手动创建对象,因为构造方法被private修饰,阻止外界创建对象。System类中的都是static方法,类名访问即可。在JDK中,有许多这样的类。

/**
     * 验证for循环打印数字1-9999所需要使用的时间(毫秒)
     */
    private static void fun1(){
        long start = System.currentTimeMillis();//开始时间
        for (int i = 1;i < 10000;i ++){
            System.out.println(i);
        }
        long end = System.currentTimeMillis();//结束时间
        System.out.println("for循环执行了" + (end - start) + "毫秒");
    }

    /**
     * 将src数组中前3个元素,复制到dest数组的前3个位置上
     * 复制元素前:src数组元素[1,2,3,4,5],dest数组元素[6,7,8,9,10]
     * 复制元素后:src数组元素[1,2,3,4,5],dest数组元素[1,2,3,9,10]
     */
    private static void fun2(){
        int[] src = {1,2,3,4,5};
        int[] dest = {6,7,8,9,10};
        System.out.println("修改前");
        System.out.println(Arrays.toString(src));
        System.out.println(Arrays.toString(dest));
        System.arraycopy(src,0,dest,0,3);
        System.out.println("修改后");
        System.out.println(Arrays.toString(src));
        System.out.println(Arrays.toString(dest));
    }
    /**
     * 循环生成100-999之间的的三位数并进行打印该数,当该数能被10整除时,结束运行的程序
     */
    private static void fun3(){
        for(int i = 100;i < 1000;i ++){
            System.out.println(i);
            if(i % 10 == 0){
                System.exit(0);
            }
        }
    }

 

    3.Math类

Math 类是包含用于执行基本数学运算的方法的数学工具类,如初等指数、对数、平方根和三角函数。

类似这样的工具类,其所有方法均为静态方法,并且一般不会创建对象。如System类

     abs方法,结果都为正数

double d1 = Math.abs(-5); // d1的值为5

double d2 = Math.abs(5); // d2的值为5

     ceil方法,结果为比参数值大的最小整数的double值

double d1 = Math.ceil(3.3); //d1的值为 4.0

double d2 = Math.ceil(-3.3); //d2的值为 -3.0

double d3 = Math.ceil(5.1); // d3的值为 6.0

     floor方法,结果为比参数值小的最大整数的double值

double d1 = Math.floor(3.3); //d1的值为3.0

double d2 = Math.floor(-3.3); //d2的值为-4.0

double d3 = Math.floor(5.1); //d3的值为 5.0

      max方法,返回两个参数值中较大的值

double d1 = Math.max(3.3, 5.5); //d1的值为5.5

double d2 = Math.max(-3.3, -5.5); //d2的值为-3.3

      min方法,返回两个参数值中较小的值

double d1 = Math.min(3.3, 5.5); //d1的值为3.3

double d2 = Math.max(-3.3, -5.5); //d2的值为-5.5

    pow方法,返回第一个参数的第二个参数次幂的值

double d1 = Math.pow(2.0, 3.0); //d1的值为 8.0

double d2 = Math.pow(3.0, 3.0); //d2的值为27.0

     round方法,返回参数值四舍五入的结果

double d1 = Math.round(5.5); //d1的值为6.0

double d2 = Math.round(5.4); //d2的值为5.0

     random方法,产生一个大于等于0.0且小于1.0的double小数

double d1 = Math.random();

 

     4.Arrays类

此类包含用来操作数组(比如排序和搜索)的各种方法。需要注意,如果指定数组引用为 null,则访问此类中的方法都会抛出空指针异常NullPointerException。

public static void main(String[] args) {
        //返回一个受指定数组支持的固定大小的列表(将其转换成list集合)
        List<Integer> integers = Arrays.asList(1, 2, 3, 4, 5);
        System.out.println(integers);

        //复制指定的数组,截取或用0填充(如有必要),以使副本具有指定的长度
        int[] arr = {1,2,3,4,5,6};
        int[] ints = Arrays.copyOf(arr, 6);
        System.out.println(Arrays.toString(ints));

        //将指定数组的指定范围复制到一个新数组
        int[] ints1 =Arrays.copyOfRange(arr,1,4);
        System.out.println(Arrays.toString(ints1));

        //将制定的值分配给指定数组的每个元素
        Arrays.fill(ints1,100);
        System.out.println(Arrays.toString(ints1));
    }

   5.大数据运算BigInteger

java中long型为最大整数类型,对于超过long型的数据如何去表示呢.在Java的世界中,超过long型的整数已经不能被称为整数了,它们被封装成BigInteger对象.在BigInteger类中,实现四则运算都是方法来实现,并不是采用运算符.

public static void main(String[] args) {
		//大数据封装为BigInteger对象
          BigInteger big1 = new BigInteger("12345678909876543210");
          BigInteger big2 = new BigInteger("98765432101234567890");
          //add实现加法运算
          BigInteger bigAdd = big1.add(big2);
          //subtract实现减法运算
          BigInteger bigSub = big1.subtract(big2);
          //multiply实现乘法运算
          BigInteger bigMul = big1.multiply(big2);
          //divide实现除法运算
          BigInteger bigDiv = big2.divide(big1);
}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值