在这个方法中,我需要把for循环改为foreach循环,我该怎么做呢?(如有必要,可添加完整类)
public String decode(String input) {
String[] letters = input.split(" ");
StringBuilder ret = new StringBuilder();
for(int i=0; i<letters.length; i++)
ret.append(decodeMap.get(letters[i]));
return ret.toString();
}
发布于 2019-10-06 19:49:41
您应该指定您正在使用的语言。我假设是java。使用for(datatype var : collection)
。下面是它看起来的样子
public String decode(String input) {
String[] letters = input.split(" ");
StringBuilder ret = new StringBuilder();
for(String s : letters){
ret.append(decodeMap.get(s));
}
return ret.toString();
}
发布于 2019-10-06 19:59:43
为了避免不必要的StringBuilder
创建,我建议这样做(假设您使用的是Java 8+):
public String decode(String input) {
String[] letters = input.split(" ");
return Arrays.stream(letters)
.map(decodeMap::get)
.collect(Collectors.joining());
}
https://stackoverflow.com/questions/58256870
复制相似问题