2017-03-16 20 views
-5

Javaで私の変更可能なメソッドで問題が発生しました。データ構造にminとmaxが変数に解決されないというエラーが表示されています。これは、コンパイルする必要がありJava最小最大メソッド

else { 
     T min = Collections.min(Set); 
     return Optional.of(min); 
    } 

@Override 
public Optional <T> min(){ 
    if (Set.isEmpty()) 
     return Optional.empty(); 

    else(
      T min = Collections.min(Set); 
      return Optional.of(min); 
} 

@Override 
public Optional <T> max() { 
    if(Set.isEmpty()) 
     return Optional.empty(); 
    else (
      T max = Collections.max(Set); 
      return Optional.of(max()); 
} 
+4

このコードはコンパイルされません。 'else'の隣に空のカッコがあるのはなぜですか? – rmlan

答えて

0

は最も重要なのは、あなたは、例えば、あなたのelse部品、周りの中括弧を必要としています。

マイナーな問題がいくつかあります:

私はあなたもあなたのif部品の周りに括弧を使用することをお勧め。

私はSetをインスタンス変数とみなします。誰かがあなたのJavaコード(Stack Overflowで質問したい人のような人)を読むことができるようにするには、大文字で始まる変数名を使用しないでください。特に、よく知られているインターフェース名(java.util.Set)を変数名として使用しないでください。混乱の恐れがあります。

maxメソッドでは、Optionalの作成時にmaxの後に丸い括弧が多すぎます。

関連する問題