欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

数组工具类Arrays

程序员文章站 2024-03-05 23:23:01
...
package Arrays;

import java.util.Arrays;

/*
java.util.Arrays是一个于数组相关的工具类,里面提供了大量的静态方法,用来实现数组的常见操作
public static String toString(数组):经参数数组变成字符串 默认格式
public static void sort(数组):按照默认升序(从小到大)对数组元素进行升序

备注:
如果是数值,sort默认按照升序从小到大
如果是字符串;sort默认是按照字母升序
如果是自定义的类型,那么这个自定义的类需要有Comparable或者comparator接口的支持

*/
public class Demo01Arrays {
    public static void main(String[] args) {
        int[] intArray={10,20,30};

        String intStr= Arrays.toString(intArray);

        int[]  array1={2,1,33,57,4,};
        Arrays.sort(array1);
        System.out.println(Arrays.toString(array1));

        String[] array2={"aaa,bbb,ccc"};
        Arrays.sort(array2);
        System.out.println(Arrays.toString(array2));
    }
}

练习

package Arrays;

import java.util.Arrays;

/*
题目
请使用Arrays相关的API,将一个随机字符串中的所有字符升序排列,并倒序打印。
 */
public class Demo02ArraysPractise {
    public static void main(String[] args) {
        String string ="afggufhhiof5444qwd";
        char[] chars=string.toCharArray();
        Arrays.sort(chars);
        for (int i = chars.length - 1; i >= 0; i--) {
            System.out.println(chars[i]);
        }
    }
}

Math工具类

package Arrays;
/*
java.util.Math类是数学相关的工具类,里面提供了大量的静态方法,完成数学相关的运算操作

public static double abs(double num);获取绝对值
public static double ceil(double num):向上取整
public static double floor(double num):向下取整
public static long round(double num);四舍五入

Math.PI代表近似圆周率
 */
public class Demo03Math {
    public static void main(String[] args) {
        System.out.println(Math.abs(3.14));
        System.out.println(Math.abs(0));
        System.out.println(Math.abs(-2.5));
        //向上取整
        System.out.println(Math.ceil(3.9));
        System.out.println(Math.ceil(3.1));
        System.out.println(Math.ceil(3.0));
        //向下
        System.out.println(Math.floor(4.9));
        System.out.println(Math.floor(4.1));
        System.out.println(Math.floor(4.0));
        //四舍五入
        System.out.println(Math.round(3.4));
        System.out.println(Math.round(3.5));
        //近似圆周率
        System.out.println(Math.PI*5);
    }
}

练习
题目
计算在-10.8到5.9之间,绝对值大于6或者小于2.1整数有多少个?

package Arrays;
/*
题目
计算在-10.8到5.9之间,绝对值大于6或者小于2.1整数有多少个?
1.确定范围就用for循环
2.起点位置 10.8 转换成10.0
    可以使用向上取整Math.ceil
    可以强制类型转换
3.每一个数字都是整数,所以步进表达式是num++
4.拿到绝对值 abs
5.一旦发现了 计数器加一

备注:如果使用Math.ceil方法,-10.8可以变成-10.0 double 也是可以进行++的
 */
public class Demo04MathPractise {
    public static void main(String[] args) {
        //计数器
        int num =0;
        //两个变量
        double min=-10.8;
        double max=5.9;
        //向上取整
        double ceil =Math.ceil(min);
        //循环判断打印
        for (double i = ceil;i<max;i++){
            //求出绝对值
            double abs =Math.abs(i);
            //进行判断
            if(abs>6||abs<2.1){
                System.out.println(i);
                num++;
            }
        }
        System.out.println(num);
    }
}

相关标签: Java基础 java