0
HashSet<String> outScopeActiveRegionCodeSet=new HashSet<String>();
for (String regionCode : outScopeActiveRegionCodeSet) {
    //code required
}   

在这里,我需要在循环中动态创建新的 TransactionLOgDTO 对象,如下所示。如果哈希集中有 3 个区域代码,我需要 3 个 TransactionLOgDTO 对象,并将区域代码附加到新对象的名称中。

TransactionLOgDTO regionCode1DTO=new TransactionLOgDTO(); 

}

我需要做这样的事情............

for (String regionCode : outScopeActiveRegionCodeSet) { TransactionLOgDTO "regionCode"+DTO=new TransactionLOgDTO(); } 
4

1 回答 1

4

我建议使用 aArrayList而不是将索引放在变量名中:

List<TransactionLOgDTO> regionCodeDTOs = new ArrayList<TransactionLOgDTO>();
HashSet<String> outScopeActiveRegionCodeSet=new HashSet<String>();
for (String regionCode : outScopeActiveRegionCodeSet) {
    regionCodeDTOs.add(new TransactionLOgDTO());
}   

或者,因为您没有使用regionCode字符串:

List<TransactionLOgDTO> regionCodeDTOs = new ArrayList<TransactionLOgDTO>();
HashSet<String> outScopeActiveRegionCodeSet=new HashSet<String>();
for (int i = 0; i < outScopeActiveRegionCodeSet.size(); i++) {
    regionCodeDTOs.add(new TransactionLOgDTO());
}

然后您可以使用以下方式访问它们:

regionCodeDTOs.get(i);

[编辑]
如果你想连接regionCodeTransactionLogDTO我会推荐一个Map instead

Map<String, TransactionLOgDTO> transactionCodeDTOs = new HashMap<String, TransactionLOgDTO>();
HashSet<String> outScopeActiveRegionCodeSet=new HashSet<String>();
for (String regionCode : outScopeActiveRegionCodeSet) {
    transactionCodeDTOs.put(regionCode, new TransactionLOgDTO());
}

检索如下:

transactionCodeDTOs.get(regionCode);
于 2012-07-20T10:03:45.770 回答