常用API:

六、StringJoiner类

StringJoiner号称是拼接神器,不仅效率高,而且代码简洁。

下面演示一下StringJoiner的基本使用

复制代码
public class StringJoinerTest {
    public static void main(String[] args) {
        StringJoiner s = new StringJoiner(",");
        s.add("java1");
        s.add("java2");
        s.add("java3");
        System.out.println(s); //结果为: java1,java2,java3
​
        System.out.println("-----------------------------");
​
        System.out.println(s.length());
​
        System.out.println("-----------------------------");
        
        /**
         * 三个参数:
         *      参数1:间隔符
         *      参数2:开头
         *      参数3:结尾
         */
        StringJoiner s1 = new StringJoiner(",","[","]");
        s1.add("java1");
        s1.add("java2");
        s1.add("java3");
        System.out.println(s1); //结果为: [java1,java2,java3]
    }
}

使用StirngJoiner改写前面把数组转换为字符串的案例

复制代码
public class StringJoinerDemo {
    public static void main(String[] args) {
        /**
         * 案例:设计一个方法,用于返回任意整型数组的内容,要求返回的数组内容
         * 格式如: [11, 22, 33]
         */
        String str = getArrayData( new int[]{11,22,33});
        System.out.println(str);
    }
​
    //方法作用:将int数组转换为指定格式的字符串
    public static String getArrayData(int[] arr){
        // 1.判断数组是否为null
        if(arr == null){
            return null;
        }
        // 2.如果数组不为null,再遍历,并拼接数组中的元素
        StringJoiner sj = new StringJoiner(", ", "[", "]");
        for (int i = 0; i < arr.length; i++) {
            // 加""是因为add方法的参数要的是String类型
            sj.add(String.valueOf(arr[i]));
        }
        // 3.把StirngBuilder转换为String,并返回。
        return sj.toString();
    }
}

七、Math类

Math类提供的常见方法:

public class MathTest {

public static void main(String[] args) {

// 目标:了解下Math类提供的常见方法。

// 1、public static int abs(int a):取绝对值(拿到的结果一定是正数)

// public static double abs(double a)

System.out.println(Math.abs(-12)); // 12

System.out.println(Math.abs(123)); // 123

System.out.println(Math.abs(-3.14)); // 3.14

// 2、public static double ceil(double a): 向上取整

System.out.println(Math.ceil(4.0000001)); // 5.0

System.out.println(Math.ceil(4.0)); // 4.0

// 3、public static double floor(double a): 向下取整

System.out.println(Math.floor(4.999999)); // 4.0

System.out.println(Math.floor(4.0)); // 4.0

// 4、public static long round(double a):四舍五入

System.out.println(Math.round(3.4999)); // 3

System.out.println(Math.round(3.50001)); // 4

// 5、public static int max(int a, int b):取较大值

// public static int min(int a, int b):取较小值

System.out.println(Math.max(10, 20)); // 20

System.out.println(Math.min(10, 20)); // 10

// 6、 public static double pow(double a, double b):取次方

System.out.println(Math.pow(2, 3)); // 2的3次方 8.0

System.out.println(Math.pow(3, 2)); // 3的2次方 9.0

// 7、public static double random(): 取随机数 [0.0 , 1.0) (包前不包后)

System.out.println(Math.random());

}

}

八、System类

public class SystemTest {

public static void main(String[] args) {

// 1、public static void exit(int status):

// 终止当前运行的Java虚拟机。

// 该参数用作状态代码; 按照惯例,非零状态代码表示异常终止。

System.exit(0); // 人为的终止虚拟机。(不要使用)

// 2、public static long currentTimeMillis():

// 获取当前系统的时间

// 返回的是long类型的时间毫秒值:指的是从1970-1-1 0:0:0开始走到此刻的总的毫秒值,1s = 1000ms

long time = System.currentTimeMillis();

System.out.println(time);

for (int i = 0; i < 1000000; i++) {

System.out.println("输出了:" + i);

}

long time2 = System.currentTimeMillis();

System.out.println((time2 - time) / 1000.0 + "s");

}

}

相关推荐
minji...2 小时前
Linux 线程同步与互斥(四) POSIX信号量,基于环形队列的生产者消费者模型
linux·运维·服务器·c语言·开发语言·c++
小锋java12342 小时前
LangChain4j 来了,Java AI智能体开发再次起飞。。。
java·人工智能·后端
Highcharts.js2 小时前
在 React 中使用 useState 和 @highcharts/react 构建动态图表
开发语言·前端·javascript·react.js·信息可视化·前端框架·highcharts
敖正炀2 小时前
BlockingQueue 详解
java
likerhood2 小时前
java中的return this、链式编程和Builder模式
java·开发语言
spring2997922 小时前
Spring Boot 实战篇(四):实现用户登录与注册功能
java·spring boot·后端
原来是猿2 小时前
Linux线程同步与互斥(三):POSIX信号量与环形队列生产者消费者模型
linux·运维·服务器·开发语言
未来转换3 小时前
基于A2A协议的生产应用实践指南(Java)
java·开发语言·算法·agent
Rust语言中文社区3 小时前
【Rust日报】Clone:像进程一样 fork 虚拟机的 Rust KVM VMM
开发语言·后端·rust