Skip to content

Commit 227a169

Browse files
biyuhaobeiwei30
authored andcommitted
Improve several map iteration (#2938)
1 parent 6c9f74c commit 227a169

File tree

11 files changed

+29
-28
lines changed

11 files changed

+29
-28
lines changed

dubbo-cluster/src/test/java/org/apache/dubbo/rpc/cluster/loadbalance/ConsistentHashLoadBalanceTest.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -31,8 +31,8 @@ public class ConsistentHashLoadBalanceTest extends LoadBalanceBaseTest {
3131
public void testConsistentHashLoadBalance() {
3232
int runs = 10000;
3333
Map<Invoker, AtomicLong> counter = getInvokeCounter(runs, ConsistentHashLoadBalance.NAME);
34-
for (Invoker minvoker : counter.keySet()) {
35-
Long count = counter.get(minvoker).get();
34+
for (Map.Entry<Invoker, AtomicLong> entry : counter.entrySet()) {
35+
Long count = entry.getValue().get();
3636
Assert.assertTrue("abs diff should < avg", Math.abs(count - runs / (0f + invokers.size())) < runs / (0f + invokers.size()));
3737
}
3838
}

dubbo-cluster/src/test/java/org/apache/dubbo/rpc/cluster/loadbalance/LeastActiveBalanceTest.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -30,8 +30,8 @@ public class LeastActiveBalanceTest extends LoadBalanceBaseTest {
3030
public void testLeastActiveLoadBalance_select() {
3131
int runs = 10000;
3232
Map<Invoker, AtomicLong> counter = getInvokeCounter(runs, LeastActiveLoadBalance.NAME);
33-
for (Invoker minvoker : counter.keySet()) {
34-
Long count = counter.get(minvoker).get();
33+
for (Map.Entry<Invoker, AtomicLong> entry : counter.entrySet()) {
34+
Long count = entry.getValue().get();
3535
// System.out.println(count);
3636
Assert.assertTrue("abs diff shoud < avg",
3737
Math.abs(count - runs / (0f + invokers.size())) < runs / (0f + invokers.size()));

dubbo-cluster/src/test/java/org/apache/dubbo/rpc/cluster/loadbalance/RandomLoadBalanceTest.java

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -32,8 +32,8 @@ public class RandomLoadBalanceTest extends LoadBalanceBaseTest {
3232
public void testRandomLoadBalanceSelect() {
3333
int runs = 1000;
3434
Map<Invoker, AtomicLong> counter = getInvokeCounter(runs, RandomLoadBalance.NAME);
35-
for (Invoker minvoker : counter.keySet()) {
36-
Long count = counter.get(minvoker).get();
35+
for (Map.Entry<Invoker, AtomicLong> entry : counter.entrySet()) {
36+
Long count = entry.getValue().get();
3737
Assert.assertTrue("abs diff should < avg", Math.abs(count - runs / (0f + invokers.size())) < runs / (0f + invokers.size()));
3838
}
3939

@@ -43,8 +43,8 @@ public void testRandomLoadBalanceSelect() {
4343
}
4444
}
4545
counter = getInvokeCounter(runs, LeastActiveLoadBalance.NAME);
46-
for (Invoker minvoker : counter.keySet()) {
47-
Long count = counter.get(minvoker).get();
46+
for (Map.Entry<Invoker, AtomicLong> entry : counter.entrySet()) {
47+
Long count = entry.getValue().get();
4848
}
4949
Assert.assertEquals(runs, counter.get(invoker1).intValue());
5050
Assert.assertEquals(0, counter.get(invoker2).intValue());

dubbo-cluster/src/test/java/org/apache/dubbo/rpc/cluster/loadbalance/RoundRobinLoadBalanceTest.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -47,8 +47,8 @@ private void assertStrictWRRResult(int loop, Map<Invoker, InvokeResult> resultMa
4747
public void testRoundRobinLoadBalanceSelect() {
4848
int runs = 10000;
4949
Map<Invoker, AtomicLong> counter = getInvokeCounter(runs, RoundRobinLoadBalance.NAME);
50-
for (Invoker minvoker : counter.keySet()) {
51-
Long count = counter.get(minvoker).get();
50+
for (Map.Entry<Invoker, AtomicLong> entry : counter.entrySet()) {
51+
Long count = entry.getValue().get();
5252
Assert.assertTrue("abs diff should < 1", Math.abs(count - runs / (0f + invokers.size())) < 1f);
5353
}
5454
}

dubbo-cluster/src/test/java/org/apache/dubbo/rpc/cluster/support/AbstractClusterInvokerTest.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -432,10 +432,10 @@ public void testSelectBalance() {
432432
counter.get(sinvoker).incrementAndGet();
433433
}
434434

435-
for (Invoker minvoker : counter.keySet()) {
436-
Long count = counter.get(minvoker).get();
435+
for (Map.Entry<Invoker, AtomicLong> entry : counter.entrySet()) {
436+
Long count = entry.getValue().get();
437437
// System.out.println(count);
438-
if (minvoker.isAvailable())
438+
if (entry.getKey().isAvailable())
439439
Assert.assertTrue("count should > avg", count > runs / invokers.size());
440440
}
441441

dubbo-cluster/src/test/java/org/apache/dubbo/rpc/cluster/support/Menu.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -30,8 +30,8 @@ public Menu() {
3030
}
3131

3232
public Menu(Map<String, List<String>> menus) {
33-
for (String key : menus.keySet()) {
34-
this.menus.put(key, new ArrayList<String>(menus.get(key)));
33+
for (Map.Entry<String, List<String>> entry : menus.entrySet()) {
34+
this.menus.put(entry.getKey(), new ArrayList<String>(entry.getValue()));
3535
}
3636
}
3737

dubbo-cluster/src/test/java/org/apache/dubbo/rpc/cluster/support/MergeableClusterInvokerTest.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -161,11 +161,11 @@ public Object invoke(Object proxy, Method method, Object[] args) throws Throwabl
161161
merge(expected, firstMenuMap);
162162
merge(expected, secondMenuMap);
163163
assertEquals(expected.keySet(), menu.getMenus().keySet());
164-
for (String key : expected.keySet()) {
164+
for (Map.Entry<String, List<String>> entry : expected.entrySet()) {
165165
// FIXME: cannot guarantee the sequence of the merge result, check implementation in
166166
// MergeableClusterInvoker#invoke
167-
List<String> values1 = new ArrayList<String>(expected.get(key));
168-
List<String> values2 = new ArrayList<String>(menu.getMenus().get(key));
167+
List<String> values1 = new ArrayList<String>(entry.getValue());
168+
List<String> values2 = new ArrayList<String>(menu.getMenus().get(entry.getKey()));
169169
Collections.sort(values1);
170170
Collections.sort(values2);
171171
assertEquals(values1, values2);

dubbo-common/src/main/java/org/apache/dubbo/common/beanutil/JavaBeanSerializeUtil.java

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -144,12 +144,11 @@ private static void serializeInternal(JavaBeanDescriptor descriptor, Object obj,
144144
}
145145
} else if (obj instanceof Map) {
146146
Map map = (Map) obj;
147-
for (Object key : map.keySet()) {
148-
Object value = map.get(key);
147+
map.forEach((key, value) -> {
149148
Object keyDescriptor = key == null ? null : createDescriptorIfAbsent(key, accessor, cache);
150149
Object valueDescriptor = value == null ? null : createDescriptorIfAbsent(value, accessor, cache);
151150
descriptor.setProperty(keyDescriptor, valueDescriptor);
152-
} // ~ end of loop map
151+
});// ~ end of loop map
153152
} else {
154153
if (JavaBeanAccessor.isAccessByMethod(accessor)) {
155154
Map<String, Method> methods = ReflectUtils.getBeanPropertyReadMethods(obj.getClass());

dubbo-remoting/dubbo-remoting-api/src/main/java/org/apache/dubbo/remoting/exchange/support/DefaultFuture.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -126,9 +126,9 @@ public static void sent(Channel channel, Request request) {
126126
* @param channel channel to close
127127
*/
128128
public static void closeChannel(Channel channel) {
129-
for (long id : CHANNELS.keySet()) {
130-
if (channel.equals(CHANNELS.get(id))) {
131-
DefaultFuture future = getFuture(id);
129+
for (Map.Entry<Long, Channel> entry: CHANNELS.entrySet()) {
130+
if (channel.equals(entry.getValue())) {
131+
DefaultFuture future = getFuture(entry.getKey());
132132
if (future != null && !future.isDone()) {
133133
Response disconnectResponse = new Response(future.getId());
134134
disconnectResponse.setStatus(Response.CHANNEL_INACTIVE);

dubbo-remoting/dubbo-remoting-api/src/test/java/org/apache/dubbo/remoting/codec/ExchangeCodecTest.java

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,7 @@
4141
import java.io.IOException;
4242
import java.util.Date;
4343
import java.util.HashMap;
44+
import java.util.Map;
4445

4546
import static org.junit.Assert.fail;
4647

@@ -114,8 +115,8 @@ public void test_Decode_Error_MagicNum() throws IOException {
114115
inputBytes.put(new byte[]{MAGIC_HIGH, 0}, TelnetCodec.DecodeResult.NEED_MORE_INPUT);
115116
inputBytes.put(new byte[]{0, MAGIC_LOW}, TelnetCodec.DecodeResult.NEED_MORE_INPUT);
116117

117-
for (byte[] input : inputBytes.keySet()) {
118-
testDecode_assertEquals(assemblyDataProtocol(input), inputBytes.get(input));
118+
for (Map.Entry<byte[], Object> entry: inputBytes.entrySet()) {
119+
testDecode_assertEquals(assemblyDataProtocol(entry.getKey()), entry.getValue());
119120
}
120121
}
121122

0 commit comments

Comments
 (0)