首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在java的循环(String s: st)中进行额外的迭代?

如何在java的循环(String s: st)中进行额外的迭代?
EN

Stack Overflow用户
提问于 2014-03-10 19:10:03
回答 3查看 290关注 0票数 2

我在字符串向量上迭代如下:

代码语言:javascript
复制
for(String s : st){
    while(s.equals("a")) //just an example, not exactly this required
    {
        //go to next element : How to do this?
    }
    System.out.println(s);
}

如何在for(:)循环中迭代下一个元素?

编辑:

正如许多人所问的那样,

字符串的向量基本上包含一个句子的单个单词,而我必须在句子中折叠名词短语,例如,如果有一个句子,如“罗伯特·西格威克要回家”。所以现在st有"Robert“,st1有"Sigwick”。经过处理后,我得做“罗伯特·西格威克”。

所以我的代码有点像:

代码语言:javascript
复制
for(String s : st){
        string newEntry = "";
        while(getPOS(s).equals("NNP")) 
        {
            newEntry += s;
            // HERE I WANT THE HELP : something like s = getNext();
        }
        if(!newEntry.equals(""))
            result.add(newEntry);
    }
EN

回答 3

Stack Overflow用户

发布于 2014-03-10 19:11:46

使用循环标签并继续

代码语言:javascript
复制
OUTER:
for(String s : st){
    while(s.equals("a")) //just an example, not exactly this required
    {
        //go to next element : How to do this?
        continue OUTER;
    }
    System.out.println(s);
}

注意:只有在有嵌套循环时,循环标签才是必需的。如果时间应该是If -语句,那么一个简单的continue;就可以工作了。

,如果它是if -语句,可能会有更好的方法。考虑:

代码语言:javascript
复制
for(String s : st){
    if(!s.equals("a")) //just an example, not exactly this required
    {
        System.out.println(s);
    }
}

这里的问题是,整个方法的层次更深。这是一种偏好。

更多关于循环标签的信息:"loop:" in Java code. What is this, why does it compile?

票数 0
EN

Stack Overflow用户

发布于 2014-03-10 19:12:01

代码语言:javascript
复制
for(String s : st){
    if(s.equals("a")) //just an example, not exactly this required
    {
        //go to next element : How to do this?
       continue;
    }
    System.out.println(s);
}
票数 0
EN

Stack Overflow用户

发布于 2014-03-10 19:27:24

您需要解释为什么需要while循环。您不能这样转到下一个元素。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22309136

复制
相关文章

相似问题

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