package com.xiva.bean;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
public class CollectionDemo {
public static void main(String[] args){
List<Integer> ages = new ArrayList<Integer>();
ages.add(2);
ages.add(1);
ages.add(55);
ages.add(5);
ages.add(18);
ages.add(11);
Object[] agesArray = ages.toArray();
for(int i = 0; i < agesArray.length; i++){
System.out.println(agesArray[i]);
}
Arrays.sort(agesArray);
System.out.println("after sort:");
for(int i = 0; i < agesArray.length; i++){
System.out.println(agesArray[i]);
}
}
}
曾经面试被问过一次,没有答上来。今天回想,再查查API;看到了。
List接口有一个toArray的方法;本程序中转换为Array的原因主要是为了排序。至于其他用途未知。
Sorting an Array
1. 数字排序 int[] intArray = new int[] { 4, 1, 3, -23 }; k, `" _# x7 M
Arrays.sort(intArray);$ {3 K) O% E1 W5 T7 X% T' i
输出: [-23, 1, 3, 4]
2. 字符串排序,先大写后小写 String[] strArray = new String[] { "z", "a", "C" };
Arrays.sort(strArray);
输出: [C, a, z]6 Q( W2 ]5 p I0 k& c* Q6 r }
3. 严格按字母表顺序排序,也就是忽略大小写排序 Case-insensitive sort
Arrays.sort(strArray, String.CASE_INSENSITIVE_ORDER);8 R7 I5 D0 [" [2 U2 Q2 k
输出: [a, C, z]
4. 反向排序, Reverse-order sort
Arrays.sort(strArray, Collections.reverseOrder());
输出:[z, a, C]
5. 忽略大小写反向排序 Case-insensitive reverse-order sort
Arrays.sort(strArray, String.CASE_INSENSITIVE_ORDER);& ]# ]/ z) n* k. D) i0 F
Collections.reverse(Arrays.asList(strArray));# M3 S. i7 M }0 \% a9 N% h% L; r
输出: [z, C, a] E8 T4 O+ Z X: h) }
分享到:
相关推荐
List 可以使用 toArray() 方法转换为 Array,Array 可以使用 Arrays.asList() 方法转换为 List,由于 Arrays.asList() 方法返回的是固定的 List,可以使用 new ArrayList(Arrays.asList(array)) 方法来创建一个可扩...
可以使用toArray()方法将List转换为Array,也可以使用Arrays.asList()方法将Array转换为List。需要注意的是,Arrays.asList()方法返回的List是固定的,不可以添加或删除元素。如果需要添加或删除元素,可以使用new ...
- List转Array:通过List的`toArray()`方法可以将其转换为数组,如果需要指定类型的数组,可以使用`list.toArray(new Type[0])`。 了解这些基本概念和特性对于理解和优化Java程序中的数据处理是非常关键的,也是...
list.toArray(strings); ``` 4. 数组转换为列表:反向操作,将数组转换为列表,可以使用 `Arrays.asList()`: ```java String[] s = {"a", "b", "c"}; List<String> list = Arrays.asList(s); ``` 5. 列表...
- **List转字符串**:可以使用`toString()`方法或者`Arrays.toString()`方法将List转换为字符串形式。 - **List转数组**:通过`toArray()`方法,可以将List转换为数组。例如: ```java List<Integer> arrayList0...
List<Character> sourceList = Arrays.asList(sourceArr); List<Character> destList = new ArrayList(sourceList.size()); Collections.copy(destList, sourceList); char[] destineArr = destList.toArray(new...
Arrays类还提供了其他许多有用的方法,如binarySearch()、copyOf()、fill()、sort()等等。这些方法可以帮助我们更方便地操作数组元素。 4. 使用Arrays类的注意事项 在使用Arrays类时,需要注意以下几点: * ...
_.sortBy(list, iterator, [context]) Returns a sorted copy of list, ranked in ascending order by the results of running each value through iterator _.groupBy(list, iterator, [context]) Splits a ...
Object[] ary1 = list3.toArray(new String[list3.size()]); ``` 5. HashMap 转化成 ArrayList:可以使用 values() 方法将 HashMap 转化为 ArrayList,例如: ```java HashMap, Marker> hashMap = iMarkerService....
6. List>Array 使用 toArray 方法,Array>List 使用 Arrays.asList(array) 方法,由于它是固定的,不固定的可以使用 new ArrayList(Arrays.asList(array))。 二、Map 相关知识点 1. 常用的 Map 集合有 HashMap、...
- **自然排序**:使用`Collections.sort(List list)`方法对`List`集合进行排序,要求元素实现`Comparable`接口。 - **自定义排序**:使用`Collections.sort(List list, Comparator comparator)`方法,其中`...
ArrayList本身不支持排序,但可以通过`Collections.sort(List<T> list)`对列表进行排序: ```java int index = list.indexOf("Element4"); Collections.sort(list); ``` 8. **集合转换** ArrayList可以与其他...
例如,`Arrays.sort(array)`默认为升序,`Arrays.sort(array, Collections.reverseOrder())`为降序。 5. **查找元素**: - `Arrays.binarySearch()`方法可用于已排序数组的二分查找,返回元素的索引。如果数组未...
**强制规定**:在 JDK7 及以上版本中,`Comparator` 实现类需要满足以下三个条件,否则在使用 `Arrays.sort` 或 `Collections.sort` 时会抛出 `IllegalArgumentException` 异常。 - **条件一**:`x` 和 `y` 的比较...
List<String> newList = new ArrayList(Arrays.asList(split)); // 可修改的列表 ``` #### 6. List元素比较 在比较列表中的元素大小时,可以使用`Collections.sort()`方法对列表进行排序,也可以通过`Comparator`...
Double[] doubleObjects = Arrays.stream(array).boxed().toArray(Double[]::new); Arrays.sort(doubleObjects); Collections.shuffle(Arrays.asList(doubleObjects)); Collections.reverse(Arrays.asList...
- `toArray()`:将集合转换成数组。 #### Map 接口 - **定义**:`Map` 接口提供了一种键值对的数据结构。每个键都是唯一的,并且映射到一个值。`Map` 本身并不继承自 `Collection` 接口,因为它存储的是键值对,...
List<Integer> list = Arrays.asList(10, 5, 25, -15, 20); // JDK 1.7 写法 Collections.sort(list, new Comparator() { @Override public int compare(Integer o1, Integer o2) { return o1 - o2; } }); ...
在Java中,要对HashMap进行排序,首先需要得到HashMap中的包含映射关系的视图(entrySet),然后将其转换为List,接着使用List.sort()或Collections.sort()进行排序。下面是示例代码: List, Integer>> list = new ...