マックス:
私はlexiographically私の文字列を整理したいです。私のコードも動作します。私は、文字列ハンス、アンナとMaxを入力すると、しかし、彼は私に、「場合」と「それ以外」のprintlnの両方を提供します。エラーはどこにありますか?
import java.util.Scanner;
class ersteAufgabe {
public static void main(String args[]) {
Scanner scan = new Scanner(System.in);
String s1 = scan.nextLine();
String s2 = scan.nextLine();
String s3 = scan.nextLine();
if (s1.compareTo(s2) < 0 & s1.compareTo(s3) < 0 & s2.compareTo(s1) > 0 & s2.compareTo(s3) < 0 & s3.compareTo(s1) > 0 & s3.compareTo(s2) > 0)
{
System.out.println("Ordnung:" + s1 +" "+ s2 +" " + s3);
}
if (s1.compareTo(s2) < 0 & s1.compareTo(s3) < 0 & s2.compareTo(s1) > 0 & s2.compareTo(s3) > 0 & s3.compareTo(s1) > 0 & s3.compareTo(s2) < 0)
{
System.out.println("Ordnung:" + s1 +" "+ s3 +" " + s2);
}
if (s1.compareTo(s2) > 0 & s1.compareTo(s3) < 0 & s2.compareTo(s3) < 0 & s2.compareTo(s1) < 0 & s3.compareTo(s1) > 0 & s3.compareTo(s2) > 0)
{
System.out.println("Ordnung:" + s2 +" "+ s1 +" " + s3);
}
if (s1.compareTo(s2) > 0 & s1.compareTo(s3) > 0 & s2.compareTo(s1) < 0 & s2.compareTo(s3) < 0 & s3.compareTo(s1) < 0 & s3.compareTo(s2) > 0)
{
System.out.println("Ordnung:" + s2 +" "+ s3 +" " + s1);
}
if (s1.compareTo(s2) < 0 & s1.compareTo(s3) > 0 & s2.compareTo(s3) > 0 & s2.compareTo(s1) > 0 & s3.compareTo(s1) < 0 & s3.compareTo(s2) < 0)
{
System.out.println("Ordnung:" + s3 +" "+ s1 +" " + s2);
}
if (s1.compareTo(s2) > 0 & s1.compareTo(s3) > 0 & s2.compareTo(s1) < 0 & s2.compareTo(s3) > 0 & s3.compareTo(s2) < 0 & s3.compareTo(s1) < 0)
{
System.out.println("Ordnung:" + s3 +" "+ s2 +" " + s1);
} else{
System.out.println("Ungueltige Eingabe");
}
}
}
MWB:
else
あなたのコード内でのみ、最後に接続されていますif
。その他の場合は、1つことを意味することにif
sが真である(そして、最後はif
偽であるが)、else
同様に実行されます。だから、これを試してみてください。
public static void main(String args[]) {
Scanner scan = new Scanner(System.in);
String s1 = scan.nextLine();
String s2 = scan.nextLine();
String s3 = scan.nextLine();
if (s1.compareTo(s2) < 0 & s1.compareTo(s3) < 0 & s2.compareTo(s1) > 0 & s2.compareTo(s3) < 0 & s3.compareTo(s1) > 0 & s3.compareTo(s2) > 0)
{
System.out.println("Ordnung:" + s1 +" "+ s2 +" " + s3);
}
else if (s1.compareTo(s2) < 0 & s1.compareTo(s3) < 0 & s2.compareTo(s1) > 0 & s2.compareTo(s3) > 0 & s3.compareTo(s1) > 0 & s3.compareTo(s2) < 0)
{
System.out.println("Ordnung:" + s1 +" "+ s3 +" " + s2);
}
else if (s1.compareTo(s2) > 0 & s1.compareTo(s3) < 0 & s2.compareTo(s3) < 0 & s2.compareTo(s1) < 0 & s3.compareTo(s1) > 0 & s3.compareTo(s2) > 0)
{
System.out.println("Ordnung:" + s2 +" "+ s1 +" " + s3);
}
else if (s1.compareTo(s2) > 0 & s1.compareTo(s3) > 0 & s2.compareTo(s1) < 0 & s2.compareTo(s3) < 0 & s3.compareTo(s1) < 0 & s3.compareTo(s2) > 0)
{
System.out.println("Ordnung:" + s2 +" "+ s3 +" " + s1);
}
else if (s1.compareTo(s2) < 0 & s1.compareTo(s3) > 0 & s2.compareTo(s3) > 0 & s2.compareTo(s1) > 0 & s3.compareTo(s1) < 0 & s3.compareTo(s2) < 0)
{
System.out.println("Ordnung:" + s3 +" "+ s1 +" " + s2);
}
else if (s1.compareTo(s2) > 0 & s1.compareTo(s3) > 0 & s2.compareTo(s1) < 0 & s2.compareTo(s3) > 0 & s3.compareTo(s2) < 0 & s3.compareTo(s1) < 0)
{
System.out.println("Ordnung:" + s3 +" "+ s2 +" " + s1);
} else{
System.out.println("Ungueltige Eingabe");
}
}
}