1、有如下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 Demo01 {
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");
System.out.println(map);
System.out.println("======第一种========");
Set<String> strings = map.keySet();
Iterator<String> iterator = strings.iterator();
while (iterator.hasNext()){
String next = iterator.next();
String s = map.get(next);
System.out.println(next+":"+s);
}
System.out.println("=====第二种======");
Collection<String> values = map.values();
Iterator<String> iterator1 = values.iterator();
while (iterator1.hasNext()){
String next = iterator1.next();
System.out.println(next);
}
System.out.println("=======第三种========");
Set<Map.Entry<String, String>> entries = map.entrySet();
Iterator<Map.Entry<String, String>> iterator2 = entries.iterator();
while (iterator2.hasNext()){
Map.Entry<String, String> next = iterator2.next();
String value = next.getValue();
String key = next.getKey();
System.out.println(key+":"+value);
}
}
}
2、定义集合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 Demo02 {
public static void main(String[] args) {
int[] arr = new int[9];
List<Integer> list = new ArrayList<Integer>();
List<Integer> list1 = new ArrayList<Integer>();
for (int i = 0; i < arr.length; i++) {
arr[i] = i;
list.add(arr[i]);
}
for (int i = 0; i < arr.length; i++) {
list1.add(arr[i]);
}
System.out.println(list);//第一次输出
Collections.reverse(list);//打乱顺序
System.out.println(list);//第二次输出
Integer max = Collections.max(list);//输出最大值
System.out.println("最大值:"+max);
Integer min = Collections.min(list);//输出最小值
System.out.println("最小值:"+min);
Collections.sort(list);//从小到大升序排列
System.out.println(list);
Collections.swap(list,3,6);//交换位置
System.out.println(list);//第三次输出
Collections.copy(list,list1);//拷贝
System.out.println(list1);
}
}
3、编写代码,模拟如下异常:
ArithmeticException类 - 算术异常
ArrayIndexOutOfBoundsException类 - 数组下标越界异常
NullPointerException - 空指针异常
ClassCastException - 类型转换异常
NumberFormatException - 数字格式异常
OutOfMemoryError - 内存溢出错误
import java.util.Scanner;
public class Demo03 {
public static void main(String[] args) {
// System.out.println(1/0); //-算术异常
// int[] arr = {1,3,4}; System.out.println(arr[3]);//- 数组下标越界异常
// int[] arr = {1,2,3}; arr = null;System.out.println(arr[4]);//空指针异常
// A b = new B();//类型转换异常
// A b1 = (C) b;
// String str = "abc";//内存溢出错误
// for (int i = 0; i < 10000; i++) {
// str = str+str;
// }
// System.out.println(str);
// int i= Integer.parseInt("ab3");//数字格式异常
}
}
class A{}
class B extends A{}
class C extends B{}
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 com.qiku.day02.ListDemo01;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
public class Demo04 {
public static void main(String[] args) {
List<String> list = new ArrayList<String >();
String[] strs = {"If" ,"you" ,"want" ,"to" ,"change","your", "fate", "I", "think" ,"you", "must" ,"come","to","the" ,"school", "to" ,"learn", "java"};
for (int i = 0; i < strs.length; i++) {
list.add(strs[i]);
}
System.out.println(list);
for (int i = 0; i < list.size(); i++) {
int index =1;
for (int j = 1; j < list.size(); j++) {
if(list.get(i)==list.get(j)){
index++;
list.remove(j);
}
}
System.out.println(list.get(i)+"="+index);
}
}
}