Java 代码优化:使用 HashMap 提高代码效率
优化以上代码内容:One possible optimization for the above code is to use a HashMap to map street codes to their respective counts. This would simplify the code and make it more efficient by removing the need for multiple if/else statements. Here's an example:
// create a HashMap to store street codes and their counts Map<String, Integer> streetCounts = new HashMap<>();
// loop through the otherStreetCount and populate the HashMap for (OtherStreetVo streetVo : otherStreetCount) { streetCounts.put(streetVo.getStreetCode(), streetVo.getCount()); }
// map the street counts to the corresponding fields in the VO object vo.setS1(streetCounts.getOrDefault('110108001', 0)); vo.setS2(streetCounts.getOrDefault('110108002', 0)); vo.setS3(streetCounts.getOrDefault('110108003', 0)); vo.setS4(streetCounts.getOrDefault('110108004', 0)); vo.setS5(streetCounts.getOrDefault('110108005', 0)); vo.setS6(streetCounts.getOrDefault('110108006', 0)); vo.setS7(streetCounts.getOrDefault('110108007', 0)); vo.setS8(streetCounts.getOrDefault('110108008', 0)); vo.setS10(streetCounts.getOrDefault('110108010', 0)); vo.setS11(streetCounts.getOrDefault('110108011', 0)); vo.setS12(streetCounts.getOrDefault('110108012', 0)); vo.setS13(streetCounts.getOrDefault('110108013', 0)); vo.setS14(streetCounts.getOrDefault('110108014', 0)); vo.setS15(streetCounts.getOrDefault('110108015', 0)); vo.setS16(streetCounts.getOrDefault('110108016', 0)); vo.setS17(streetCounts.getOrDefault('110108017', 0)); vo.setS18(streetCounts.getOrDefault('110108018', 0)); vo.setS19(streetCounts.getOrDefault('110108019', 0)); vo.setS20(streetCounts.getOrDefault('110108020', 0)); vo.setS21(streetCounts.getOrDefault('110108021', 0)); vo.setS22(streetCounts.getOrDefault('110108022', 0)); // note: there is a typo in the original code for '110108023' vo.setS23(streetCounts.getOrDefault('110108023', 0));
原文地址: https://www.cveoy.top/t/topic/ncyk 著作权归作者所有。请勿转载和采集!