当前位置: 编程技术>移动开发
本页文章导读:
▪接口 Map.Entry<K,V> 接口 Map.Entry<K,V>
http://www.jar114.com/jdk6/zh_CN/api/java/util/Map.Entry.html Map类提供了一个称为entrySet()的方法,这个方法返回一个Map.Entry实例化后的对象集。接着,Map.Entry类提供了一个getKey()方.........
▪ 八种结构型模式 之1 PROXY 代理模式 8种结构型模式 之1 PROXY 代理模式
代理模式也叫委托模式,给某一个对象提供一个代理对象,并由代理对象控制对原对象的引用。是一项基本的设计技巧。分为普通代理和强制代理。 另一.........
▪ 软件工程师应怎样度过一生 程序员应怎样度过一生
最近换工作了,毕业一年多了,还是和开始那么迷茫,人总是那么奇怪,找不到工作了,努力去学习,去找好的工作,找到工作了就会想象更好的工作,不知道.........
[1]接口 Map.Entry<K,V>
来源: 互联网 发布时间: 2014-02-18
接口 Map.Entry<K,V>
http://www.jar114.com/jdk6/zh_CN/api/java/util/Map.Entry.html
Map类提供了一个称为entrySet()的方法,这个方法返回一个Map.Entry实例化后的对象集。接着,Map.Entry类提供了一个getKey()方法和一个getValue()方法,因此,上面的代码可以被组织得更符合逻辑。举例如下:
Map map = new HashMap();
Iterator iterator = map.entrySet().iterator();
while(iterator.hasNext()){
Map.Entry entry = (Map.Entry)iterator.next();
Object key = entry.getKey();
Object value = entry.getValue();
}
Map的常见用法总结
http://www.jar114.com/jdk6/zh_CN/api/java/util/Map.Entry.html
Map类提供了一个称为entrySet()的方法,这个方法返回一个Map.Entry实例化后的对象集。接着,Map.Entry类提供了一个getKey()方法和一个getValue()方法,因此,上面的代码可以被组织得更符合逻辑。举例如下:
Map map = new HashMap();
Iterator iterator = map.entrySet().iterator();
while(iterator.hasNext()){
Map.Entry entry = (Map.Entry)iterator.next();
Object key = entry.getKey();
Object value = entry.getValue();
}
Map的常见用法总结
java如何遍历map的所有的元素2009-03-01 16:04关键字: java如何遍历map的所有的元素(各种方法) JDK1.4中
Map map = new HashMap();
Iterator it = map.entrySet().iterator();
while (it.hasNext()) {
Map.Entry entry = (Map.Entry) it.next();
Object key = entry.getKey();
Object value = entry.getValue();
}
JDK1.5中,应用新特性For-Each循环
Map m = new HashMap();
for(Object o : map.keySet()){
map.get(o);
}
返回的 set 中的每个元素都是一个 Map.Entry 类型。
private Hashtable<String, String> emails = new Hashtable<String, String>();
//方法一: 用entrySet()
Iterator it = emails.entrySet().iterator();
while(it.hasNext()){
Map.Entry m=(Map.Entry)it.next();
logger.info("email-" + m.getKey() + ":" + m.getValue());
}
// 方法二:jdk1.5支持,用entrySet()和For-Each循环()
for (Map.Entry<String, String> m : emails.entrySet()) {
logger.info("email-" + m.getKey() + ":" + m.getValue());
}
// 方法三:用keySet()
Iterator it = emails.keySet().iterator();
while (it.hasNext()){
String key;
key=(String)it.next();
logger.info("email-" + key + ":" + emails.get(key));
}
// 方法五:jdk1.5支持,用keySEt()和For-Each循环
for(Object m: emails.keySet()){
logger.info("email-" + m+ ":" + emails.get(m));
}
另外 我们可以先把hashMap 转为集合Collection,再迭代输出,不过得到的对象
Map aa = new HashMap();
aa.put("tmp1", new Object()); //追加 替换用同样的函数.
aa.remove("temp1"); //删除
for (Iterator i = aa.values().iterator(); i.hasNext(); ) {
Object temp = i.next();
} //遍历
来个完整的,包含TreeSet的元素内部排序的
public static void main(String[] args) {
ArrayList<String> list = new ArrayList<String>();
HashMap<Object,Object> hash = new HashMap<Object,Object>();
TreeMap<Object,Object> treeMap = new TreeMap<Object,Object>();
list.add("a");
list.add("b");
list.add("c");
hash.put(3, 3);
hash.put(4, 4);
hash.put(5, 5);
hash.put(6, 6);
hash.put(1, 1);
hash.put(2, 2);
treeMap.put(1, 1);
treeMap.put(2, 2);
treeMap.put(3, 3);
treeMap.put(4, 4);
treeMap.put(5, 5);
treeMap.put(6, 6);
//list遍历
for(String m: list){
System.out.println(m);
}
// hashmap entrySet() 遍历
for(Map.Entry<Object,Object> m: hash.entrySet()){
System.out.println(m.getKey()+"---"+m.getValue());
}
//hashmap keySet() 遍历
for(Object m: hash.keySet()){
System.out.println(m+"---"+hash.get(m));
}
// treemap keySet()遍历
for(Object m: treeMap.keySet()){
System.out.println(m+"---"+treeMap.get(m));
}
}
[2] 八种结构型模式 之1 PROXY 代理模式
来源: 互联网 发布时间: 2014-02-18
8种结构型模式 之1 PROXY 代理模式
代理模式也叫委托模式,给某一个对象提供一个代理对象,并由代理对象控制对原对象的引用。是一项基本的设计技巧。分为普通代理和强制代理。 另一个角度又分为静态代理和动态代理。
Subject接口
RealSubject类
ProxySubject类
TestProxy 测试类:
测试结果:
游戏代练帮忙打怪
1:普通代理:由代理生成真实角色,真是角色不能直接new出来
约定真实角色不能 直接 new ,必须通过代理类才能操作。
真实角色,构造函数中 有 代理类参数,做判断
代理类构造函数中 new 真实角色
测试类:
2:强制代理:由真是角色指定代理,不是指定的代理不能调方法
测试:
代理模式也叫委托模式,给某一个对象提供一个代理对象,并由代理对象控制对原对象的引用。是一项基本的设计技巧。分为普通代理和强制代理。 另一个角度又分为静态代理和动态代理。
Subject接口
public interface Subject {
void operation(String arg);
}RealSubject类
public class RealSubject implements Subject {
@Override
public void operation(String arg) {
System.out.println("实际操作, 参数:" + arg);
}
}
ProxySubject类
public class ProxySubject implements Subject {
private Subject beProxy;
public ProxySubject(Subject beProxy) {
this.beProxy = beProxy;
}
@Override
public void operation(String arg) {
System.out.println("代理操作, 参数:" + arg);
beProxy.operation(arg);
}
}TestProxy 测试类:
public class TestProxy {
public static void main(String[] args) {
RealSubject realSubject = new RealSubject();
ProxySubject proxySubject = new ProxySubject(realSubject);
System.out.println("------------Without Proxy ------------");
doSomething(realSubject);
System.out.println("------------With Proxy ------------");
doSomething(proxySubject);
}
public static void doSomething(Subject subject){
subject.operation("flynewton");
}
}测试结果:
引用
------------Without Proxy------------
实际操作,参数:liuwentao
------------With Proxy------------
代理操作,参数:liuwentao
实际操作,参数:liuwentao
实际操作,参数:liuwentao
------------With Proxy------------
代理操作,参数:liuwentao
实际操作,参数:liuwentao
游戏代练帮忙打怪
1:普通代理:由代理生成真实角色,真是角色不能直接new出来
约定真实角色不能 直接 new ,必须通过代理类才能操作。
真实角色,构造函数中 有 代理类参数,做判断
public GamePlayer(IGamePlayer _gamePlayer,String _name) throws Exception{
if(_gamePlayer == null ){
throw new Exception("不能创建真是角色!");
}else{
this.name = _name;
}
}代理类构造函数中 new 真实角色
public GamePlayerProxy(String name){
try {
gamePlayer = new GamePlayer(this,name);
} catch (Exception e) {
}
} 测试类:
IGamePlayer proxy = new GamePlayerProxy("张三");
proxy.login("zhangsan","password");2:强制代理:由真是角色指定代理,不是指定的代理不能调方法
测试:
//定义个游戏的角色
IGamePlayer player = new GamePlayer("张三");
//获得指定的代理
IGamePlayer proxy = player.getProxy();
//开始打游戏,记下时间戳
System.out.println("开始时间是:2009-8-25 10:45");
proxy.login("zhangSan", "password");
//开始杀怪
proxy.killBoss();
//升级
proxy.upgrade();
//记录结束游戏时间
System.out.println("结束时间是:2009-8-26 03:40");
[3] 软件工程师应怎样度过一生
来源: 互联网 发布时间: 2014-02-18
程序员应怎样度过一生
最近换工作了,毕业一年多了,还是和开始那么迷茫,人总是那么奇怪,找不到工作了,努力去学习,去找好的工作,找到工作了就会想象更好的工作,不知道是自己逼迫自己不断的前进,还是被社会的发展逼的走投无路才去前进,或者两者都有吧。
写程序是永远没有停止的思考,我们不停的思考我们的代码,思考着可能出现问题的地方,思考新的解决方法,生怕哪一步会出错。其实人生也是这样的,我们每天那么努力的工作学习,为了让我们的亲人生活的更好些,为了让社会认可我们。努力永远是个不过时的词汇。
我思考着怎么提高人的思想,品质,看待问题分析问题的能力,我思考着别人看待问题的方式,思考着人们对待事物的态度,有的虚伪真的像真的,有的真诚真的像虚伪,可能真正有高尚品德的人是不会让人看出虚伪的,不管你有一双多么敏感的眼睛。
人或者要有自己的规划,有自己的思想和灵魂,程序员也一样,我们不应该让别人的言行阻碍了我们行动的步伐,我们有思想也要有计划,去行动,得到自己预订的结果,不然那是固执。
人最重要的不是有多少钱,而是多么健康,投资自己的健康,永远是最赚钱的买卖。每天坚持为自己的健康而努力,是一个人毅力的表现形式,真的,谁能每天都坚持去做了。 喜欢自己不喜欢的人,喜欢对自己不好的人,喜欢排挤自己的人,喜欢自己一切不喜欢的人,这个好像很难,其实也很容易。
每天都有有计划的去度过,有计划就要有结果,一步一步的做,可能当你没有去最求成功的时候,却真的已经成功了。努力踏实的走好自己的每一步,细细思考自己做的每件事,人还是有心最好,虽然我自认为没有心,但我会朝着有心人的方向去努力,真正的对别人好,对自己好。
1 楼
silenceisall
2011-09-13
有同感。。。。。
写的很好!
写的很好!
最新技术文章: