实训18 2018.04.18
Posted goxxiv
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了实训18 2018.04.18相关的知识,希望对你有一定的参考价值。
Java的一些知识点:
1. 构造器一定与类同名,但是与类同名的方法不一定是构造器!即普通方法也可以使用类名作方法名且不会报错,但是会有警告。
2. 接口只能使用public static 修饰(均为默认)!
3. switch的每一个分支要视情况考虑是否添加break。(这个地方也是经常出的考点)
Map:
在Map中,元素是成对(以 key=value 的形式)存在的——双列集合。key值是不能重复的,但是value的值是可以重复的,即Map是满射但不是单射。
import java.util.map;
Map<K,V> map=new Hash<K,V>(); Map是接口,常用的实现类有HashMap和LinkedHashMap。K表示键的类型,V表示值的类型。
方法:
put():添加。注意其返回值,如果键不存在,那么返回null;如果键已存在,那么返回键对应的原来的值,map中存新的值。
import java.util.*; import java.util.Map.Entry; import static java.lang.System.out; public class Test0418 { public static void main(String[] args) { HashMap<Integer, Integer> hs = new HashMap<Integer, Integer>(); System.out.println(hs.put(1, 20)); System.out.println(hs.put(2, 21)); System.out.println(hs.put(1, 22)); } }
get():获取。参数:键,返回值是键对应的值。
toString():以“键=值”的形式打印。
remove():删除键值对。参数:键,返回值:当键存在时删除键值对并返回对应的值,如果该键不存在,那么返回null。
Map的遍历:
方法一:
1. 通过keySet(),返回该Map中所有的键构成的Set(键具有唯一性);
2. 遍历Set中的所有键;
3. 由键找出对应的值。
写法1: for(String s: map.keySet()){ map.get(s);}
写法2: for(Iterator<String> it=map.keySet().iterator; it.hasNext(); ){ map.get(it.next);}
方法二:
使用Map.Entry获得Entry键值对对象。(Map接口中的Entry接口(内部接口))
写法:
Map<K,V> map=new HashMap<K,V>(); Set<Map.Entry<String,String>> set=map.entrySet(); //写法1 for(Iterator<Map.Entry<String,String> it=map.entrySet().iterator;it.hasNext();){ Map.Entry<String,String> entry=it.next; } //写法2 for(Map.Entry<String,String> entry: map.entrySet()){ entry.getKey(); entry.getValue(); }
以上是关于实训18 2018.04.18的主要内容,如果未能解决你的问题,请参考以下文章