1

これは基本的な質問ですが、助けが必要です。

int の 2 つの配列 a と b を指定すると、最初の要素が同じか、最後の要素が同じである場合に true が返されます。両方の配列の長さは 1 以上になります。

commonEnd({1, 2, 3}, {7, 3}) → true

commonEnd({1, 2, 3}, {7, 3, 2}) → false

commonEnd({1, 2, 3}, {1, 3}) → true

次のコードがありますが、コンパイルされません。

public boolean commonEnd(int[] a, int[] b) {
    if(a[0] == b[0] || a[a.length-1] ==b[b.length-1])
        return true;
}
4

5 に答える 5

4
  • if の右括弧がありません。

  • 「else」の部分で何か (false) を返す必要があります。

これを伝えるには、コンパイラ エラーが発生するはずです。

個人的には、私はif完全に取り除きます

return  a[0] == b[0] || a[a.length-1] ==b[b.length-1];

(しかし、これは読みにくいと考えられるかもしれません)

于 2012-11-16T04:50:43.413 に答える
0

が真でない場合、リターンタイプはありませんでした

  public boolean commonEnd(int[] a, int[] b) {
  if(a[0] == b[0] || a[a.length-1] ==b[b.length-1])
      return true;
  return false;
  }
于 2012-11-16T04:56:22.037 に答える
0
public boolean commonEnd(int[] a, int[] b) {
  if((a[0] == b[0]) || (a[a.length-1] ==b[b.length-1]))
      return true;
  return false;
}

return ステートメントを見逃している (if ステートメントが true でない場合)、それがコンパイルされなかった理由です。

于 2012-11-16T05:01:33.030 に答える
-1

関数のreturnステートメントを期待します

public boolean commonEnd(int[] a, int[] b) {
    if(a[0] == b[0] || a[a.length-1] ==b[b.length-1]) //Missed `)`
          {
          return true;
          }
        return false;
     }
于 2012-11-16T04:58:02.923 に答える