(Java)集合框架(四)Collections、Arrays工具类

java.util.Collections    Collections是集合工具,用来对集合进行操作。

import java.util.ArrayList;
import java.util.Collections;
import java.util.List;

public class CollectionsDemo1 {
	public static void main(String[] args) {
		function_3();
	}
	
	// 1.Collections.sort()静态方法     对于List集合进行升序排序
	public static void function_1(){
		// 创建List集合
		List<String> list1 = new ArrayList<String>();
		list1.add("ads");
		list1.add("zds");
		list1.add("dsf");
		list1.add("Aax");
		System.out.println(list1);  // [ads, zds, dsf, Aax]
		Collections.sort(list1);
		System.out.println(list1);  // [Aax, ads, dsf, zds]
		
	}
	
	// 2.Collection.binarySearch()静态方法    对List集合进行二分查找
	//   参数:(List集合,被查找的元素)   返回值:若找到,被查找元素的索引;否则,返回负的插入点减1
	public static void function_2(){
		// 创建List集合
		List<Integer> list2 = new ArrayList<Integer>();
		list2.add(1);
		list2.add(6);
		list2.add(9);
		list2.add(11);
		list2.add(16);
		list2.add(19);
		int index  = Collections.binarySearch(list2, 9);
		System.out.println(index);    // 2
		
		int index1  = Collections.binarySearch(list2, 10);
		System.out.println(index1);   // -4
	}
	
	// 3.Collections.shuffle()方法       对List中的元素进行随机排列
	public static void function_3(){
		// 创建List集合
		List<Integer> list3 = new ArrayList<Integer>();
		list3.add(1);
		list3.add(6);
		list3.add(9);
		list3.add(11);
		list3.add(16);
		list3.add(19);
		System.out.println(list3);    // [1, 6, 9, 11, 16, 19]
		Collections.shuffle(list3);
		System.out.println(list3);    // [9, 6, 1, 16, 11, 19]
	}

}

【Arrays类】

import java.util.Arrays;

/*
 * java.util.Arrays 工具类
 *    此类包含用来操作数组(比如排序和搜索)的各种方法
 * 
 */
public class ArraysDemo1 {
	public static void main(String[] args) {
		//function_1();
		//function_2();
		//function_3();
		int[] arr = {22,190,67,33,89,96,93,200};
		int[] arr1 = function_4(arr);
		String s = Arrays.toString(arr1);
		System.out.println(s);                   //[22, 33, 67]
	}
	
	//1.对数组进行升序排序
	//  static void sort(数组)
	public static void function_1(){
		int[] arr ={3,2,1,5,9,4};
		Arrays.sort(arr);
		System.out.println(arr);
		for (int i = 0; i < arr.length; i++) {
			System.out.println(arr[i]);  // 1  2 3 4 5 9
		}
	}
	
	//2.数组的二分查找
	//  static void  binarySearch(数组,被查找的元素)   返回索引
	//  若元素不存在,返回  (-插入点-1)
	public static void function_2(){
		int[] arr = {1,3,5,6,8,10};
		int index = Arrays.binarySearch(arr,3);
		System.out.println(index);       // 1
	}
	
	//3.将数组转换成字符串
	//  static String toString(数组)
	public static void function_3(){
		int[] arr = {1,3,5,6,8,10};
		String s = Arrays.toString(arr);
		System.out.println(s);            // [1, 3, 5, 6, 8, 10]
	}
	
	//4.对学生成绩进行排序,返回最后三个人的成绩
	public static int[] function_4(int[] arr){
		// 对数组进行排序
		Arrays.sort(arr);
		// 新数组的初始化
		int[] new_arr = new int[3];
		// 将arr中最后的三个元素复制到new_arr中
		System.arraycopy(arr, 0, new_arr, 0, 3);
		return new_arr;
			
	}
	
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章