package map2;

import java.util.HashMap;
import java.util.Map;
import java.util.TreeMap;

/**
 * Demonstriert verwaiste Einträge in einer Map und den Unterschied zwischen einer HashMap und einer TreeMap.
 * 
 * @author  Ralf Kunze (rkunze@uos.de), Institut fuer Informatik, Universitaet Osnabrueck
 * @date 18.05.2007
 */
public class MapTest {

	public static void main(String[] args) {
		Map<Point,String> map = new HashMap<Point,String>();
		
		Point p1 = new Point(1,100);
		
		map.put(p1, "P1(1,100)");
		System.out.printf("Die Map enthaelt %s %s%n",p1, map.containsKey(p1)?"":"nicht");
		System.out.printf("%s%n%n",map);
		
		p1.setX(100);
		System.out.printf("Die Map enthaelt %s %s%n",p1, map.containsKey(p1)?"":"nicht");
		System.out.printf("%s%n%n",map);
		
		Point p2 = new Point(1,100);
		System.out.printf("Die Map enthaelt %s %s%n",p2, map.containsKey(p2)?"":"nicht");
		System.out.printf("%s%n%n",map);
		
		p1 = new Point(1,100);
		p2 = new Point(100,1);
		
		map = new TreeMap<Point,String>();
		
		System.out.printf("Vorheriger Wert fuer key p1 war %s%n", map.put(p1, "P1(1,100)"));
		System.out.printf("Vorheriger Wert fuer key p2 war %s%n", map.put(p2, "P2(100,1)"));
	}

}
