首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Switch for and foreach

Switch for and foreach
EN

Stack Overflow用户
提问于 2019-10-06 19:40:56
回答 2查看 72关注 0票数 0

在这个方法中,我需要把for循环改为foreach循环,我该怎么做呢?(如有必要,可添加完整类)

代码语言:javascript
运行
复制
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();
}
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2019-10-06 19:49:41

您应该指定您正在使用的语言。我假设是java。使用for(datatype var : collection)。下面是它看起来的样子

代码语言:javascript
运行
复制
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();
}
票数 4
EN

Stack Overflow用户

发布于 2019-10-06 19:59:43

为了避免不必要的StringBuilder创建,我建议这样做(假设您使用的是Java 8+):

代码语言:javascript
运行
复制
    public String decode(String input) {
        String[] letters = input.split(" ");
        return Arrays.stream(letters)
                     .map(decodeMap::get)
                     .collect(Collectors.joining());
    }
票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58256870

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档