2017-11-12 11 views
1

なんらかの理由で、このエラーが発生します。エラー:'void' type not allowed hereここに「void」タイプはありませんか?

これはpublic static void main(String[] args){}「方法」にあります。

if(Arrays.equals(Arrays.sort(arrayCorrectLength1), arrayCorrectLength1) == false){ 
     System.out.println("Error."); 
} 

私はすでにjava.util.Arraysをインポートしています。 プログラムは文字列配列を取り込み、それらをマージすることになっていますが、最初にアルファベット順であるかどうかをチェックする必要があります。ソートされたバージョンの配列が元の配列にあるかどうかを確認します。これは私が得るものです。

答えて

4

Arrays.sortvoidを返します。したがって、Arrays.equalsの引数として渡すことはできません。

ではなく、配列からストリームを作成し、ソートして配列に集めてから、入力としてArrays.equalsに渡します。

if(!Arrays.equals(Arrays.stream(arrayCorrectLength1) 
      .sorted().toArray(String[]::new), arrayCorrectLength1)){ 
     System.out.println("Error."); 
} 
+1

ありがとうございます!これはそれを修正しました! –

関連する問題