// 获取并发查询结果 for (int i = 0; i < 36; i++) { try { Future<Object> future = completionService.take(); String pinName = "pin" + (i + 1); distinctData.put(pinName, future.get()); } catch (ExecutionException e) { e.printStackTrace(); } },我想获取 pin35 pin36 pin29 pin30 pin 31 pin1~pin28 pin 32~pin34,请问这个循环该怎么写
时间: 2024-02-14 20:29:08 浏览: 117
要按照您的要求获取`pin35`、`pin36`、`pin29`、`pin30`、`pin31`以及`pin1`到`pin28`和`pin32`到`pin34`的查询结果,您可以按照如下方式修改循环:
```java
for (int i = 0; i < 36; i++) {
try {
Future<Object> future = completionService.take();
String pinName = "pin" + (i + 1);
if (i == 28 || (i >= 31 && i <= 33)) {
// 获取 pin1~pin28 和 pin32~pin34 的查询结果
distinctData.put(pinName, future.get());
} else if (i == 34 || i == 35 || i == 28 || i == 29 || i == 30 || (i >= 0 && i <= 27)) {
// 获取 pin35, pin36, pin29, pin30, pin31, pin1~pin27 的查询结果
distinctData.put(pinName, future.get());
}
} catch (ExecutionException e) {
e.printStackTrace();
}
}
```
在上面的示例中,我们根据索引值`i`的不同,判断需要获取的查询结果。如果`i`等于28,或者在31到33之间,表示需要获取`pin1`到`pin28`和`pin32`到`pin34`的查询结果;如果`i`等于34、35、28、29、30,或者在0到27之间,表示需要获取`pin35`、`pin36`、`pin29`、`pin30`、`pin31`以及`pin1`到`pin27`的查询结果。
根据实际需求,您可以根据这个示例进行修改,以满足您的具体要求。
阅读全文