当前位置: 首页> 房产> 市场 > 辽宁沈阳网站建设_手机html网页制作_怎么制作公司网页_常州seo收费

辽宁沈阳网站建设_手机html网页制作_怎么制作公司网页_常州seo收费

时间:2025/7/11 23:44:08来源:https://blog.csdn.net/PluMage11/article/details/146955437 浏览次数:0次
辽宁沈阳网站建设_手机html网页制作_怎么制作公司网页_常州seo收费

目录

常用工具类介绍

数学工具类

数组工具类


常用工具类介绍

工具类就是专门为一些特定场景编写的,便于我们去使用的类。工具类一般都会内置大量的静态方法,我们可以通过类名直接使用。

数学工具类

java提供的运算符实际上只能进行一些在小学数学中出现的运算,但是如果我们想要进行乘方、三角函数之类的高级运算,就没有对应的运算符能够做到,而此时我们就可以使用数学工具类来完成。

    public static void main(String[] args) {Math.pow(2,3);  //2的三次方Math.abs(-1);  //求绝对值Math.max(11,13);  //最大值Math.sqrt(9);  //算术平方根Math.sin(Math.PI/2);  //求π/2的正弦值Math.asin(1);  //三角函数的反函数,这里是arcsin1的值Math.ceil(4.5);  //向上取整Math.floor(4.5);  //向下取整}

计算sinπ得到的1.2246467991473532E-16是精度导致的,这里的E是科学计数法的10,这个数是非常接近于0的。

快速计算对数:

    public static void main(String[] args) {System.out.println(Math.log(Math.E)); //以e为底的对数函数,其实就是ln,我们可以直接使用Math中定义好的eMath.log10(100);  // 10为底的对数函数//利用换底公式,可以有任何我们想求的对数函数double a=Math.log(4)/Math.log(2);  //这里是求以2为底4的对数,log(2)4=ln4/ln2}

 

随机数的生成:Random类

import java.util.Random;public class Main {public static void main(String[] args) {Random random=new Random(); //创建Random对象System.out.println(random.nextInt(100)); //nextInt方法可以创建指定0-x之内的随机数}
}


数组工具类

数组工具类Arrays

用于便捷操作数组,比如打印数组可以直接通过toString方法转换字符串:

    public static void main(String[] args) {int[] arr=new int[]{1,6,3,5,2,0};System.out.println(Arrays.toString(arr));}
//输出{1,6,3,5,2,0}

排序:

    public static void main(String[] args) {int[] arr=new int[]{1,6,3,5,2,0};Arrays.sort(arr); //将所有的元素从小到大顺序排放System.out.println(Arrays.toString(arr));}
//输出[0, 1, 2, 3, 5, 6]

快速进行填充:

    public static void main(String[] args) {int[] arr=new int[10];Arrays.fill(arr,66);System.out.println(Arrays.toString(arr));}
//输出[66, 66, 66, 66, 66, 66, 66, 66, 66, 66]

快速对一个数组进行拷贝:

    public static void main(String[] args) {int[] arr=new int[]{1,2,3,4,5};int[] target=Arrays.copyOf(arr,5);System.out.println(Arrays.toString(target)); //拷贝数组的全部内容,并生成一个新的数组对象System.out.println(arr==target);}
//输出[1, 2, 3, 4, 5]
false
        int[] arr=new int[]{1,2,3,4,5};int[] target=Arrays.copyOfRange(arr,3,5); //拷贝某个范围的内容,包前不包后System.out.println(Arrays.toString(target)); 
//输出[4, 5]

也可以将一个数组中的内容拷贝到其他数组中:

    public static void main(String[] args) {int[] arr=new int[]{1,2,3,4,5};int[] target=new int[10];System.arraycopy(arr,0,target,2,5);  //使用System.arraycopy进行搬运System.out.println(Arrays.toString(target));}
//输出[0, 0, 1, 2, 3, 4, 5, 0, 0, 0]

对一个有序的数组(从小到大排列)我们可以使用二分搜索快速找到对应元素在哪个位置:

    public static void main(String[] args) {int[] arr=new int[]{1,2,3,4,5};System.out.println(Arrays.binarySearch(arr,5));}
//输出4

多维数组:

因为现在数组里每个元素就是一个数组,所以说toString会出现些问题。Arrays也支持对多维数组进行处理。

deepToString方法对多维数组进行打印

同样的,因为数组本身没有重写equals方法,所以说无法判断两个不同的数组对象中每一个元素是否相同,Arrays也为一维数组和多维数组提供了相等判断的方法:

    public static void main(String[] args) {int[][] a=new int[][]{{2,1,3},{4,6,9}};int[][] b=new int[][]{{2,1,3},{4,6,9}};System.out.println(Arrays.equals(a,b));  //equals仅适用于一维数组System.out.println(Arrays.deepEquals(a,b));  //对于多维数组使用deepEquals进行深层次判断}
//输出false
true

关键字:辽宁沈阳网站建设_手机html网页制作_怎么制作公司网页_常州seo收费

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

责任编辑: