数组排序
Java中可以使用Arrays类的sort()方法对数组进行排序。
Arrays.sort(arr); // 调用Arrays类的sort()方法对数组进行排序
将几个零散的数值转化为ArrayList
Arrays.asList(nums[i], nums[left], nums[right])
Map map = new HashMap<>();
map.containsKey(c2);
map.getOrDefault(c1,0);
map.put(c1, map.getOrDefault(c1,0) + 1);
遍历map的方法
1. entrySet
entrySet是java中 键-值对的集合,Set里面的类型是Map.Entry,一般可以通过map.entrySet()得到。
System.out.println("通过Map.entrySet遍历key和value");
Set> entryseSet=map.entrySet();
for (Map.Entry entry:entryseSet) {
System.out.println(entry.getKey()+","+entry.getValue());
}
// 即通过getKey()得到K,getValue得到V。
2. keySet
还有一种是keySet, keySet是键的集合,Set里面的类型即key的类型
System.out.println("通过Map.keySet遍历key和value:");
Set set = map.keySet();
for (String s:set) {
System.out.println(s+","+map.get(s));
}
3. 通过Map.values()遍历所有的value,但不能遍历key
//第四种
System.out.println("通过Map.values()遍历所有的value,但不能遍历key");
for (String v : map.values()) {
System.out.println("value= " + v);
}
Set testSet = new HashSet();
testSet.add("Java");
set1.contains(i) // 很好用 效率高
常用方法 数组转为Set
由于nums1是int[ ] 居然会报错!
Set set1 = new HashSet<>(Arrays.asList(nums1));
注意:
数组转为set 就老老实实遍历吧!
Set set1 = new HashSet<>();
for(int num : nums1){
set1.add(num);
}
set 转为数组 也就老老实实一个个填吧!
Set res = new HashSet<>();
int[] result = new int[res.size()];
int j = 0;
for(Integer num : res){
result[j++] = num;
}
当然可以使用更加高级的stream流
resSet.stream().mapToInt(x -> x).toArray();