Говорит, что мне нужно; но нет пропавших без вести?

Эй, я про код программы для колледжа, я почти закончил, но я не могу найти ошибку для проверки моего номера:

public class isbn {

public static void main (String [] args) {

String eingabe = args[0];                                           // ISBN geht ins args-Feld 0
boolean check = false;                                              // Standart-Wert gesetzt
String isbn = eingabe.replace( "-", "").replace(" ", "");           // Minus- sowie Leerzeichen-Zeichen werden ersetzt


if (args[0].length() ==13) {                                           // Check ob ISBN lang genug ist
  int m =                                         // Summe der Produkte der Ziffern 
  ((isbn.charAt(0)-48)*1)
  +((isbn.charAt(1)-48)*3)
  +((isbn.charAt(2)-48)*1)
  +((isbn.charAt(3)-48)*3)
  +((isbn.charAt(4)-48)*1)
  +((isbn.charAt(5)-48)*3)
  +((isbn.charAt(6)-48)*1)
  +((isbn.charAt(7)-48)*3)
  +((isbn.charAt(8)-48)*1)
  +((isbn.charAt(9)-48)*3)
  +((isbn.charAt(10)-48)*1)
  +((isbn.charAt(11)-48)*3);

  int org = isbn.charAt(12)-48;                  // Prüfziffer laut ISBN   
  System.out.println("Pruefziffer is " + org);   // Ausgabe org-Test 
  System.out.println(m);                           // m-Test
  int m2 = (10-m%10)%10;
  System.out.println(m2);                          // Ausgabe Test-Prüfziffer
  return;
} 

else if (args[0].length() <13) {
  System.out.println(eingabe + " ist eine zu kurze ISBN");
}
else (args[0].length() >13) {
  System.out.println(eingabe + " ist eine zu lange ISBN"); 
}

}}

ошибка из оболочки:

isbn.java:35: error: not a statement
else (args[0].length() >13) {
     ^

isbn.java:35: ошибка: ';' ожидается другое (args[0].length() >13) { ^ 2 ошибок

мир!

3 ответа

Решение

Вы хотите еще одно заявление, если здесь.

else if (args[0].length() >13) {...your code...}

Остальные операторы не позволяют указывать подобное условие. Они привыкли говорить: "Если ни одно из других утверждений не является правдой, сделайте это вместо этого".

else if (args[0].length() <13) {
  System.out.println(eingabe + " ist eine zu kurze ISBN");
}
else if(args[0].length() >13) {
  System.out.println(eingabe + " ist eine zu lange ISBN"); 
}

Добро пожаловать в Дев брат!

Вам нужно "если" после того, как еще на вашем последнем еще

Ваша проблема заключается в использовании "еще". Вы можете использовать else if (condition) { do something } или просто использовать else { do something } что всегда будет происходить, если ваши предыдущие "если" не были правдой. В вашем примере я подозреваю, что вы хотите использовать просто else, потому что он охватывает все ситуации, которые не были затронуты иначе.

Другие вопросы по тегам