关于Map集合的练习
- 有如下map:
Map<String,String> map = new HashMap<>();
map.put(“aaa”,“111”);
map.put(“bbb”,“111”);
map.put(“ccc”,“111”);
map.put(“ddd”,“222”);
使用3种方式,遍历并打印
import java.util.*;
public class mapDemo {
public static void main(String[] args) {
Map<String, String> map = new HashMap<>();
map.put("aaa", "111");
map.put("bbb", "111");
map.put("ccc", "111");
map.put("ddd", "222");
Set<String> keys = map.keySet();
Iterator<String> itKey = keys.iterator();
while (itKey.hasNext()) {
String key = itKey.next();
String value = map.get(key);
System.out.println(key + ":" + value);
}
Collection<String> values = map.values();
Iterator<String> valueIt = values.iterator();
while (valueIt.hasNext()) {
System.out.println(valueIt.next());
}
Set<Map.Entry<String, String>> entries = map.entrySet();
Iterator<Map.Entry<String, String>> entryIt = entries.iterator();
while (entryIt.hasNext()) {
Map.Entry<String, String> entry = entryIt.next();
String key = entry.getKey();
String value = entry.getValue();
System.out.println(key + ":" + value);
}
}
}
- 定义集合List, 依次将
1,2,3,4,5,6,7,8,9添加到集合中
使用Collections中的方法:
打乱顺序
求最大值
求最小值
升序排列
交换位置
将该集合所有元素拷贝到另一个集合中并打印
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
public class ListDemo {
public static void main(String[] args) {
List<Integer> list = new ArrayList<>();
int[] arr= new int[]{1,2,3,4,5,6,7,8,9};
for (int i : arr) {
list.add(i);
}
System.out.println(list);
Collections.shuffle(list);//随机
System.out.println(list);
System.out.println(Collections.max(list));//取list集合的最大值
System.out.println(Collections.min(list));//取list集合的最小值
Collections.sort(list);//排序
System.out.println(list);
Collections.swap(list,0,3);//交换集合元素的位置
System.out.println(list);
List<Integer> list2 = new ArrayList<>();
for (Integer in : list) {//拷贝集合1
list2.add(in);
}
System.out.println(list2);
Collections.copy(list2,list);//拷贝集合
System.out.println(list2);
}
}
- 编写代码,模拟如下异常:
ArithmeticException类 - 算术异常
ArrayIndexOutOfBoundsException类 - 数组下标越界异常
NullPointerException- 空指针异常
ClassCastException- 类型转换异常
NumberFormatException- 数字格式异常
OutOfMemoryError- 内存溢出错误
import java.util.ArrayList;
import java.util.LinkedList;
import java.util.List;
public class ExceptionDemo {
public static void main(String[] args) {
// System.out.println(3%0);
// int[] arr = new int[1];
// int a = arr[10000000];
// String[] str = null;
// System.out.println(str.length);
// A b =new B();
// C c = (C)b;
// double a = Double.parseDouble("asdfasdasdf");
// 时间稍久 给JVM的内存大小 越大运行时间越久
// List<String> list = new LinkedList<>();
// list.add("a");
// for (int i = 0; i < 10000; i++) {
// list.addAll(list);
// }
}
}
class A{}
class B extends A{}
class C extends A{}
- 4、分析以下需求,并用代码实现:
(1)统计每个单词出现的次数
(2)有如下字符串
"If you want to change your fate I think you must come to the school to learn java"(用空格间隔)
(3)打印格式:
to=3
think=1
you=2
import java.util.*;
public class mapDemo02 {
public static void main(String[] args) {
String str = "If you want to change your fate I think you must come to the school to learn java";
String[] strArr = str.split(" ");
System.out.println(Arrays.toString(strArr));
HashMap<String,Integer> map = new HashMap<>();
for (int i = 0; i < strArr.length; i++) {
if(!map.containsKey(strArr[i])){
map.put(strArr[i],1);
}else {
Integer in = map.get(strArr[i])+1;
map.put(strArr[i],in);
}
}
Set<String> keys = map.keySet();
Iterator<String> itKey = keys.iterator();
while (itKey.hasNext()) {
String key = itKey.next();
Integer value = map.get(key);
System.out.println(key + "=" + value);
}
}
}
770

被折叠的 条评论
为什么被折叠?



