读书人

java Map有关

发布时间: 2013-12-11 16:44:13 作者: rapoo

java Map相关
for (;;) {
Entry<K,V> e = i.next();
K key = e.getKey();
V value = e.getValue();
sb.append(key == this ? "(this Map)" : key);
sb.append('=');
sb.append(value == this ? "(this Map)" : value);
if (! i.hasNext())
return sb.append('}').toString();
sb.append(',').append(' ');
}


sb.append(value == this ? "(this Map)" : value); ------ value == this这是啥意思啊,看不懂!!
求教!
[解决办法]
不是你这样看的,value == this ? "(this Map)" : value看全部的,这是一个三目运算
[解决办法]
key == this ? "(this Map)" : key搞懂这句话

首先判断 key == this 这个条件是否成立,如果成立的话,返回String : "(this Map)",否则返回 key.
这段话将返回一个String作为参数给sb.append
[解决办法]
value == this不就是判断value和this的值是否相等么?相等就是true,不相等就是false
[解决办法]

引用:
key == this ? "(this Map)" : key搞懂这句话

首先判断 key == this 这个条件是否成立,如果成立的话,返回String : "(this Map)",否则返回 key.
这段话将返回一个String作为参数给sb.append
很详细了
[解决办法]
三目运算,如果前面的表达式成立,执行?和:中间的,如果不成立就执行:之后的
[解决办法]
如果你不知道this是什么,那么打印下或者debug下;或许我的回答多余了
[解决办法]
引用
三目运算,如果前面的表达式成立,执行?和:中间的,如果不成立就执行:之后的

可以去看下书
[解决办法]
楼主问的不是三目运算符,而是this指的是什么东西吧?
[解决办法]
估计楼主是没看懂问号表达式 这个可以百度之.
[解决办法]
this不就是当前类嘛

读书人网 >J2SE开发

热点推荐