MapKeyValue-File-List小练习
程序员文章站
2022-07-10 12:17:04
...
练习题
package com.sq.exer;
import java.util.*;
/*
* 如何遍历 Map 的 key 集,value 集,key-value 集,使用上泛型
*/
public class MapKeyValue {
public static void main(String[] args) {
Map<String, Integer> map = new HashMap<String, Integer>();
map.put("1", 100);
map.put("2", 99);
map.put("3", 95);
map.put("4", 90);
map.put("5", 85);
// 遍历 key
// Set keySet(): 返回所有 key 构成的 Set 集合
Set<String> keySet = map.keySet();// keySet() 的返回值是 Set<k> entrySet() 的返回值类型是Set<Map.Entry<K,V>>
for (String key : keySet) {
System.out.println(key);
}
// 1
// 2
// 3
// 4
// 5
// 遍历 value
Collection<Integer> values = map.values();// Collection values():返回所有 vlaue 构成的 Collection 集合
Iterator<Integer> iterator = values.iterator();
while (iterator.hasNext()) {
System.out.println(iterator.next());
}
// 100
// 99
// 95
// 90
// 85
// 遍历 key-value
Set<Map.Entry<String, Integer>> entrySet = map.entrySet();
Iterator<Map.Entry<String, Integer>> iterato = entrySet.iterator();
while (iterato.hasNext()) {
Map.Entry<String, Integer> entry = iterato.next();
String key = entry.getKey();
Integer value = entry.getValue();
System.out.println(key + "--->" + value);
}
// 1--->100
// 2--->99
// 3--->95
// 4--->90
// 5--->85
}
// 提供一个方法,用于遍历获取 HashMap<String,String> 中的所有 value,并存放在 List 中返回。考虑上集合中泛型的使用。
public List<String> getValueList(HashMap<String, String> map) {
ArrayList<String> valueList = new ArrayList<>();
Collection<String> values = map.values();
for (String value : values) {
valueList.add(value);
}
return valueList;
}
}
/*
Map接口中的常用方法有哪些
增:put(K k,V v)
删:V remove(K k)
改:put(K k,V v)
查:V get(K k)
长度:int size()
*/
package com.sq.exer;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
// 写出使用 Iterator 和 增强for 循环遍历 List<String>的代码,使用上泛型
public class ListTest {
public static void main(String[] args) {
List<String> list = new ArrayList<>();
list.add("1");
list.add("2");
list.add("3");
list.add("4");
list.add("5");
Iterator<String> iterator = list.iterator();
while (iterator.hasNext()) {
System.out.println(iterator.next());
}
System.out.println("*** *** *** *** *** ***");
for (String l : list) {
System.out.println(l);
}
}
}
package com.sq.exer;
import java.io.File;
/*
* 创建一个与 a.txt 文件同目录下的另一个文件 b.txt
*/
public class FileTest {
public static void main(String[] args) {
File file1 = new File("D:\\a");
File file2 = new File(file1.getParent(), "b.txt");
}
}
下一篇: 剑指Offer51:数组中的逆序对