1

次のようなロジックを作成したいと思います。nullの場合、デバッガーはすべての複雑な文字列操作をスキップし、最初のブロックに見られるs2ようにnullを返します。私はどこか間違っていますか?s1 + s2 + s3if

public static String helloWorld(String s1, String s2, String s3){
   if(s2==null){
     continue;
     return null;
   }

   ... lots of string manipulation involving s1, s2 and s3.

   return (s1+s2+s3);
}
4

3 に答える 3

6

continue は使用しないでください。continue は for ループなどです。

for(Foo foo : foolist){
    if (foo==null){
        continue;// with this the "for loop" will skip, and get the next element in the
                 // list, in other words, it will execute the next loop,
                 //ignoring the rest of the current loop
    }
    foo.dosomething();
    foo.dosomethingElse();
}

ただ行う:

public static String helloWorld(String s1, String s2, String s3){
   if(s2==null){
     return null;
   }

   ... lots of string manipulation involving s1, s2 and s3.

   return (s1+s2+s3);
}
于 2012-09-18T16:28:45.703 に答える
2

ステートメントは、ステートメントではなく、continueループ ( forwhiledo-while) に使用されますif

あなたのコードは

public static String helloWorld(String s1, String s2, String s3){
   if(s2==null){
     return null;
   }

   ... lots of string manipulation involving s1, s2 and s3.

   return (s1+s2+s3);
}
于 2012-09-18T16:29:58.527 に答える
2

continueそこは必要ありません、return null;十分です。

continueループで残りのブロックをスキップして次のステップに進む場合に、ループ内で使用されます。

例:

for(int i = 0; i < 5; i++) {
    if (i == 2) {
        continue;
    }

    System.out.print(i + ",");
}

印刷します:

0,1,3,4,

于 2012-09-18T16:30:54.453 に答える