for0therStreetVo streetVo otherStreetCount if 110108001equalsstreetvogetStreetCode vosetS1streetV0getCount; else if 110108002equalsstreetVogetStreetCode vo setS2streetVogetCount ; else if 110108003eq
One way to optimize the above code is to use a Map to store the mapping between street codes and their respective counts. Here's an example:
Map<String, Integer> streetCounts = new HashMap<>(); for (OtherStreetVo streetVo : otherStreetCount) { streetCounts.put(streetVo.getStreetCode(), streetVo.getCount()); }
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)); vo.setS23(streetCounts.getOrDefault("110108023", 0));
This code creates a HashMap called streetCounts and populates it with the street codes and their respective counts from the otherStreetCount list. Then, instead of using a series of if-else statements, we simply retrieve the count for each street code from the map using the getOrDefault method. If a street code is not present in the map, we default to 0. This approach is more concise and easier to read than the original code.
原文地址: https://www.cveoy.top/t/topic/bJEx 著作权归作者所有。请勿转载和采集!