Java for循环语法?

时间:2014-01-17 14:39:15

标签: java loops for-loop

我的朋友发给我这段代码并且它有效,但我无法理解“ss”是什么意思?谁能帮我吗?感谢。

public static void main(String[] args)
{
    String sentence;
    int index=1;
    String[] words;

    System.out.print("Please enter a sentence: ");
    sentence = EasyIn.getString();

    words = sentence.split(" ");

    for(String ss : words )
    {
        System.out.println("Word "+index+ " is "+ ss);

        if(ss.matches("[a-zA-Z]+"))
        {
            System.out.println("Word "+ss+" is a good word");
            System.out.print("\n");
        }
        else
        {
            System.out.println("Word "+ss+" is a bad word");
            System.out.print("\n");
        }
        index++;
    }
}

4 个答案:

答案 0 :(得分:3)

这是一个循环

for(String ss : words )

它说:对于words中的每个元素,创建一个名为String的临时元素(ss)。所以它是说,逐步浏览words中的每个元素,将其称为ss这个单循环,用它做一些事情然后继续下一个。

答案 1 :(得分:1)

代码中使用的ss变量是for循环的一部分。 ss表示单词集合中的每个单个字符串。您可能想参考for循环工作的java语言教程。

答案 2 :(得分:1)

代码:

for(String ss : words) {
    // ...
}

是Java的for-each循环,它迭代集合或数组参数中的每个元素。 String ss位在循环范围内声明了一个名为ss的变量。

对collection参数的要求是它需要是一个实现Iterable<T>接口或数组的类型。

答案 3 :(得分:0)

变量ss是一个使用迭代器的局部变量。 java中提供了两种类型的for循环。 第一: for(int i=0;i<5;i++){ //block of code } 第二: for(int i:array) { //block of code }

你提到的那个是for循环的第二种类型。

ss充当迭代器,并根据您的情况下基于给定正则表达式(“空格”)拆分输入句子而形成的每个单词进行迭代。