/* * Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license * Click nbfs://nbhost/SystemFileSystem/Templates/Classes/Class.java to edit this template */ package generics; import java.util.ArrayList; import java.util.Iterator; import java.util.List; /** * * @author steve */ public class GenericArrayMap implements MinGenericMap { List> entries = new ArrayList<>(); @Override public void put(K k, V v) { for(var entry: entries) { if(entry.k.equals(k)) { entry.v = v; return; } } entries.add(new GenericMapEntry<>(k,v)); } @Override public V get(K k) { for(var entry: entries) { if(entry.k.equals(k)) { return entry.v; } } return null; } @Override public int size() { return entries.size(); } @Override public Iterator iterator() { return new Iterator<>() { Iterator> iter = entries.iterator(); @Override public boolean hasNext() { return iter.hasNext(); } @Override public K next() { return iter.next().k; } }; } public static void main(String[] args) { MinGenericMap map = new GenericArrayMap<>(); GenericMapTest.test(map); } }