62,620
社区成员
发帖
与我相关
我的任务
分享
public interface ITest {
public Map<String,Object> dodo();//规定key必须是string
}
public class Test implements ITest{
public Map<String, Object> dodo() {
Map map1=new HashMap();
map1.put(555, "aaaaaaaa");
return map1;//key不是String,但也返回了
}
public static void main(String[] args) {
System.out.println(aa.map.get(555));
}
}
public class Test implements ITest{
public Map<String, Object> dodo() {
Map<String,Object> map1=new HashMap<String,Object>();//这行应该是这样的.
map1.put(555, "aaaaaaaa"); //这行编译都通不过了.
return map1;//key不是String,但也返回了
}
}
public interface ITest {
public Map<String,Object> dodo();//规定key必须是string
}
public class Test implements ITest{
public Map<String, Object> dodo() {
Map map1=new HashMap();
map1.put(555, "aaaaaaaa");
return map1;//key不是String,但也返回了
}
public static void main(String[] args) {
System.out.println(new Test().dodo().get(555));
}
}
/**
* 带有“只读”键的 Map
*/
public class SwitchableMap<K, V> extends HashMap<K, V> {
private List<K> readonlyKeys = new ArrayList<K>();
/**
* 将指定的键置为只读
*
* @param keys 要置为只读的键。
*/
public void setReadOnly(K... keys) {
readonlyKeys.addAll(Arrays.asList(keys));
}
/**
* 将指定的键置为可写
*
* @param keys 要置为可写的键。
*/
public void setWritable(K... keys) {
readonlyKeys.removeAll(Arrays.asList(keys));
}
/**
* 放入一个值
*
* @param key 键
* @param value 值
*
* @return 被替换出来的值
*
* @throws IllegalStateException 如果键是只读的。
*/
@Override
public V put(K key, V value) {
if (readonlyKeys.contains(key)) {
throw new IllegalStateException("key " + key + " is readonly");
}
return super.put(key, value);
}
}import java.util.*;
class MyClass{
public final static HashMap<String,Object> myMap=new HashMap<String,Object>();
}
interface ITest {
public MyClass dodo();//规定key必须是string
}
public class Test implements ITest{
public static void main(String[] args) {
Test t=new Test();
System.out.println(t.dodo());
}
public MyClass dodo() {
MyClass mc=new MyClass();
mc.myMap.put(new Integer(555), "aaaaaaaa"); //编译通不过.
return mc;//key不是String,但也返回了
}
}