Arrays里面工具方法
Arrays常用的三个方法
方法名 | 说明 |
---|---|
Arrays.fill() | 初始化数组(填充) |
Arrays.sort() | 排序 |
Arrays.toString() | 将数组拼接成字符串 |
fill方法
fill方法可以把数组里面值初始化为同一个数
package com.itxs.demo04;
import java.util.Arrays;
/**
* @Classname : demo01
* @Description : TODO Arrays 类里面工具方法
* @Author : lin_refuel@qq.com
*/
public class demo01 {
public static void main(String[] args) {
//定义一个数组
int[] ints = new int[8];
for (int s : ints) {
System.out.print(s +",");
}
System.out.println("\n=====================");
//掉用fill方法
Arrays.fill(ints,4);//初始化数组ints里面的值为4
for (int s:ints) {
System.out.print(s + ",");
}
}
}
运行结果:
sort方法
给数组进行排序,默认升序
package com.itxs.demo04;
import java.util.Arrays;
import java.util.Random;
/**
* @Classname : demo01
* @Description : TODO Arrays 类里面工具方法
* @Author : lin_refuel@qq.com
*/
public class demo01 {
public static void main(String[] args) {
//定义一个数组
int[] ints = new int[8];
//定义一个可以获取随机数的对象
Random random = new Random();
//循环赋值
for (int i = 0; i < ints.length; i++) {
ints[i] = random.nextInt(100);
}
//循环输出里数组里面的值
for(int i =0;i < ints.length; i++){
System.out.print(ints[i] + ",");
}
System.out.println("\n=========================");
//调用short方法,进行升序
Arrays.sort(ints);
//循环输出里数组里面的值
for(int i =0;i < ints.length; i++){
System.out.print(ints[i] + ",");
}
}
}
toString方法
数组拼接成为字符串
import java.util.Arrays;
import java.util.Random;
/**
* @Classname : demo01
* @Description : TODO Arrays 类里面工具方法
* @Author : lin_refuel@qq.com
*/
public class demo01 {
public static void main(String[] args) {
//定义一个数组
int[] ints = new int[8];
//定义一个可以获取随机数的对象
Random random = new Random();
//循环赋值
for (int i = 0; i < ints.length; i++) {
ints[i] = random.nextInt(100);
}
//调用toString拼接成字符串
String s1 = Arrays.toString(ints);
System.out.println(s1);
}
}
运行结果:
sort方法自定义排序规则
值得注意的是:Comparator中的类型是Integer,排序的数组也只能是Integer类型,不能够是int类型
package com.itxs.demo04;
import java.util.Arrays;
import java.util.Comparator;
import java.util.Random;
import java.lang.Integer;
import java.util.Scanner;
/**
* @Classname : demo02
* @Description : TODO sort方法自定义排序
* @Author : lin_refuel@qq.com
*/
public class demo02 {
public static void main(String[] args) {
Integer[] arr = new Integer[10];
//生成随机数
Random random = new Random();
//通过循环给随机数赋值
// int j = 10;
for (int i = 0; i < arr.length; i++) {
arr[i] = random.nextInt(100);//放入100以内的随机数
}
//字符串形式输出arr
String s1 = Arrays.toString(arr);
System.out.println("原始排序:"+s1);
//通过sort方法进行排序
System.out.println("选择排序方式:输入--升序--或者--降序--");
String saj = new Scanner(System.in).nextLine();
Arrays.sort(arr, new Comparator<Integer>() {
@Override
public int compare(Integer o1, Integer o2) {
if(saj.equals("降序"))
return o2-o1;
else if(saj.equals("升序"))
return o1-o2;
else
return 0;//不变
}
});
System.out.println("排序后:"+Arrays.toString(arr));
}
}
运行结果: