存放混合类型对象的JAVA容器
来源:互联网 发布:cnc雕刻机编程软件 编辑:程序博客网 时间:2024/04/29 07:34
import java.util.*;
public class Favorites {
// Typesafe heterogeneous container pattern - implementation
private Map<Class<?>, Object> favorites =
new HashMap<Class<?>, Object>();
public <T> void putFavorite(Class<T> type, T instance) {
if (type == null)
throw new NullPointerException("Type is null");
favorites.put(type, instance);
}
public <T> T getFavorite(Class<T> type) {
return type.cast(favorites.get(type));
}
// Typesafe heterogeneous container pattern - client
public static void main(String[] args) {
Favorites favorites = new Favorites();
favorites.putFavorite(String.class, "StringResult");
favorites.putFavorite(Integer.class, 12);
favorites.putFavorite(Boolean.class, false);
System.out.println("results are: "
+ favorites.getFavorite(String.class)
+ favorites.getFavorite(Integer.class)
+ favorites.getFavorite(Boolean.class));
}
}
public class Favorites {
// Typesafe heterogeneous container pattern - implementation
private Map<Class<?>, Object> favorites =
new HashMap<Class<?>, Object>();
public <T> void putFavorite(Class<T> type, T instance) {
if (type == null)
throw new NullPointerException("Type is null");
favorites.put(type, instance);
}
public <T> T getFavorite(Class<T> type) {
return type.cast(favorites.get(type));
}
// Typesafe heterogeneous container pattern - client
public static void main(String[] args) {
Favorites favorites = new Favorites();
favorites.putFavorite(String.class, "StringResult");
favorites.putFavorite(Integer.class, 12);
favorites.putFavorite(Boolean.class, false);
System.out.println("results are: "
+ favorites.getFavorite(String.class)
+ favorites.getFavorite(Integer.class)
+ favorites.getFavorite(Boolean.class));
}
}
- 存放混合类型对象的JAVA容器
- 容器存放基础类型、对象、指针
- Java里的容器存放的元素必须是1个对象.
- JAVA 对象存放的位置
- 关联性容器存放自定义类型
- vector容器中存放结构体类型的变量
- Vector容器中存放结构体类型的变量
- vector容器中存放结构体类型的变量
- 容器(容器中只能存放对象)
- Objective-C id为什么可以存放任意类型的对象?
- JAVA进阶 面向对象程序设计——第3周 对象容器(数据存放)
- Java 容器类型的打印
- lob类型的存放
- STL容器里存放对象还是指针
- STL容器里存放对象还是指针
- STL容器里存放对象还是指针
- STL容器里存放对象还是指针?
- STL容器里存放对象还是指针
- 被误解的C++——模板和宏
- 审计打分系统
- Monit的web监控界面
- .Net新手☞文件上传
- java 环境变量
- 存放混合类型对象的JAVA容器
- 2011-7-6 控件学习
- The composition of the oracle database
- JavaScript数组-多维数组的困惑
- 反省
- Apache服务器全局配置(补充)
- JavaScript 跨浏览器添加和删除事件
- eclipse 快捷键
- Custom Event in ActionScript3.0