24种设计模式之---(适配器模式)
2013-10-28 10:42
225 查看
我们先看客户端需求
public class testclient {
public static void main(String[] args) {
// TODO Auto-generated method stub
Map map;
application.excute(map);//要求输出map数据
System.out.print(b);
}
}
//map数据类型输出程序
package com.moshi.adapter;
import java.util.HashMap;
public class application {
public void excute(HashMap map){
for(int i=0;i<map.size();i++){
System.out.println(map.get(i+""));
}
}
}
这都定义好了 但我们只实现了返回List数据类型的类
实例代码如下--------------------------------------------------------------
package com.moshi.adapter;
import java.util.ArrayList;
import java.util.List;
public class listserver {
public List getList(){
List list=new ArrayList();
list.add("张三");
list.add("李四");
list.add("王五");
return list;
}
}
所以这里要定义一个list的适配器类 完成数据类型的匹配。。。
适配器类代码如下:
package com.moshi.adapter;
import java.util.HashMap;
import java.util.List;
public class listadapter extends HashMap{
private List list;
public listadapter(List listserver){
this.list=listserver;
}
public int size(){
return list.size();
}
public Object get(Object i){
return list.get(Integer.valueOf(i.toString()).intValue());
}
}
这个就是适配器的作用。。
然后再在客户端输出
package com.moshi.adapter;
import java.util.List;
import java.util.Scanner;
public class testclient {
public static void main(String[] args) {
application application=new application();
listserver listserver=new listserver();
List list=listserver.getList();
Map listadapter=new listadapter(list);//list->map的适配器
application.excute(listadapter);//输出map型的数据
Scanner scanner=new Scanner(System.in);
double b=scanner.nextDouble();
System.out.print(b);
}
}
public class testclient {
public static void main(String[] args) {
// TODO Auto-generated method stub
Map map;
application.excute(map);//要求输出map数据
System.out.print(b);
}
}
//map数据类型输出程序
package com.moshi.adapter;
import java.util.HashMap;
public class application {
public void excute(HashMap map){
for(int i=0;i<map.size();i++){
System.out.println(map.get(i+""));
}
}
}
这都定义好了 但我们只实现了返回List数据类型的类
实例代码如下--------------------------------------------------------------
package com.moshi.adapter;
import java.util.ArrayList;
import java.util.List;
public class listserver {
public List getList(){
List list=new ArrayList();
list.add("张三");
list.add("李四");
list.add("王五");
return list;
}
}
所以这里要定义一个list的适配器类 完成数据类型的匹配。。。
适配器类代码如下:
package com.moshi.adapter;
import java.util.HashMap;
import java.util.List;
public class listadapter extends HashMap{
private List list;
public listadapter(List listserver){
this.list=listserver;
}
public int size(){
return list.size();
}
public Object get(Object i){
return list.get(Integer.valueOf(i.toString()).intValue());
}
}
这个就是适配器的作用。。
然后再在客户端输出
package com.moshi.adapter;
import java.util.List;
import java.util.Scanner;
public class testclient {
public static void main(String[] args) {
application application=new application();
listserver listserver=new listserver();
List list=listserver.getList();
Map listadapter=new listadapter(list);//list->map的适配器
application.excute(listadapter);//输出map型的数据
Scanner scanner=new Scanner(System.in);
double b=scanner.nextDouble();
System.out.print(b);
}
}
相关文章推荐
- 24种设计模式--适配器模式【Adapter Pattern】
- 24种设计模式之适配器模式
- * 24种设计模式——适配器模式
- Java设计模式——适配器模式
- 设计模式-适配器模式
- 小话设计模式(六)适配器模式
- 【设计模式】适配器模式
- JAVA设计模式初探之适配器模式
- 深入浅出设计模式-007:适配器模式(Adapter Pattern)
- HeadFirst 设计模式学习笔记6--适配器模式和外观模式
- 4. JavaScript 设计模式(适配器模式,外观模式)
- 设计模式——适配器模式
- 【设计模式】——适配器模式
- 设计模式大总结(四):适配器模式
- 设计模式(6)------适配器模式
- Java设计模式之《适配器模式》及应用场景
- java设计模式之六适配器模式(Adapter)
- java设计模式之适配器模式
- C#设计模式-1、适配器模式(Adapter Pattern)(转载)
- 【学习笔记】设计模式-适配器模式