Java_数组定义及常用方法(二)

2014-11-24 07:48:32 · 作者: · 浏览: 2
alArray(){ String intArrayToString = Arrays.toString(intArray); System.out.println(intArrayToString); //result: [1, 2, 3, 4, 5] } /** * 将数组转化成List集合 * 注意:不能直接将int[]转化为集合、因为asList()方法的参数必须是对象。应该先把int[]转化为Integer[]。 * 对于其他primitive类型的数组也是如此,必须先转换成相应的wrapper类型数组。 */ public static void convetArrayToList(){ Integer[] integerArray = new Integer[intArray.length]; for (int i = 0; i < integerArray.length; i++) { integerArray[i] = intArray[i]; } ArrayList integerList1 = new ArrayList (Arrays.asList(integerArray)); /* * 不能写成下面: * ArrayList integerList2 = (ArrayList )Arrays.asList(integerArray); * 返回的是List 、强转可以通过编译、但是不能正常使用。 */ for(int i : integerList1){ System.out.print(i); } //result: 12345 System.out.println(); } /** * 将List集合转换成数组 */ public static void convetListToArray(){ ArrayList strList = new ArrayList (Arrays.asList(strArray)); String[] strArrayFromList = new String[strList.size()]; strList.toArray(strArrayFromList); System.out.println(Arrays.toString(strArrayFromList)); //result: [a, b, c, d, e] /* * 注意:不能写成这样:String[] strArrayFromList = (String[])strList.toArray(strArrayFromList);会抛出ClassCastException。 * List.toArray()与List.toArray(T[] t)的区别在于: * List.toArray()返回的是一个Object[]、不能强转成String[]、强转的话可以通过编译、但是不能进行String[]的操作 * 而List.toArray(T[] t)会将list的值转换成T类型的数组。 */ } /** * 将数组转换成Set集合 */ public static void convertArrayToSet(){ Set
set = new HashSet (Arrays.asList(strArray)); //Set具有无序性、所以输出结构不一定是原来数组元素存放顺序 System.out.println(set); //result: [d, e, b, c, a] } /** * 判断某个数组中是否包含一个元素、思路:将数组转换成list使用list的contains方法 */ public static void isContainObject(){ ArrayList strList = new ArrayList (Arrays.asList(strArray)); System.out.println(strList.contains("a")); //result: true //另一种实现 Arrays.sort(strArray); if(Arrays.binarySearch(strArray, "c") >= 0){ System.out.println(true); }else{ System.out.println(false); } } /** * 将两个相同类型的数组连接起来 */ public static void connTwoSameArray(){ int[] intArray2 = new int[]{6, 7, 8, 9, 10}; } /** * 将数组中数据排序 */ public static void sortArray(){ String[] str = {"c", "a" ,"d" ,"z" }; Arrays.sort(str); System.out.println(Arrays.toString(str)); //反序、 Arrays.sort(str, Collections.reverseOrder()); System.out.println(Arrays.toString(str)); } public static void main(String[] args) { /*printOriginalArray(); convetArrayToList(); convetListToArray(); isContainObject(); convertArrayToSet(); sortArray();*/ testFillArray(); } }