目录
1.Map
第一种:普遍使用,二次取值
第二种:通过Map.entrySet使用iterator遍历key和value:
第三种:通过Map.entrySet遍历key和value:
第四种:通过Map.values()遍历所有的value,但不能遍历key:
2. Set:
(1)迭代遍历:
(2)for循环遍历:
3.Map算法:
数组的度
1.Map
第一种:普遍使用,二次取值
public class Main {System.out.println(“通过Map.keySet遍历key和value:”);for (String key : map.keySet()) {System.out.println("key= "+ key + " and value= " + map.get(key));}
第二种:通过Map.entrySet使用iterator遍历key和value:
Iterator<Map.Entry<String, String>> it = map.entrySet().iterator();while (it.hasNext()) {Map.Entry<String, String> entry = it.next();System.out.println("key= " + entry.getKey() + " and value= " + entry.getValue());}
第三种:通过Map.entrySet遍历key和value:
for (Map.Entry<String, String> entry : map.entrySet()) {System.out.println("key= " + entry.getKey() + " and value= " + entry.getValue());}
第四种:通过Map.values()遍历所有的value,但不能遍历key:
for (String v : map.values()) {System.out.println("value= " + v);}
2. Set:
(1)迭代遍历:
Set set = new HashSet();Iterator it = set.iterator();while (it.hasNext()) {String str = it.next();System.out.println(str);}
(2)for循环遍历:
for (String str : set) {System.out.println(str);}
3.Map算法:
数组的度
class Solution {public int findShortestSubArray(int[] nums) {Map<Integer, int[]> map=new HashMap<Integer, int[]>();int le=nums.length;for(int i=0;i<le;i++) {int thisn=nums[i];if(map.containsKey(thisn)) {map.get(thisn)[2]++;map.get(thisn)[1]=i;}else {map.put(thisn,new int[]{i,i,1});}}int maxn=1,maxle=1;for(Map.Entry<Integer, int[]> entry:map.entrySet()) {int[] arr=entry.getValue();if(maxle<arr[2]) {maxle=arr[2];maxn=arr[1]-arr[0]+1;}else if(maxle==arr[2]){maxn=arr[1]-arr[0]+1<maxn?arr[1]-arr[0]+1:maxn;}}return maxn;}}
如果觉得《java遍历map和set的方法》对你有帮助,请点赞、收藏,并留下你的观点哦!