2016-02-19 5 views
0

Мой код может выглядеть грамматически ужасно, но это потому, что мне пришлось подвергать цензуре грязный язык.Почему моя петля не заканчивается? Я пробовал 10 конфигураций. (Java)

Я пытаюсь закрыть его, когда кто-то вводит «летучих мышей», «летучих мышей» или «БАТС».

import java.util.*; 

public class BATS 
{ 

    public static void main(String[] args) 
    { 

    Scanner BAT = new Scanner(System.in); 
    String Bat, BATS; 
    System.out.println("What is the most badass flying mammal ever?!"); 

    Bat = BAT.nextLine(); 
    Bat = Bat.toUpperCase(); 

     while(Bat != "BATS") 
     { 

      System.out.println("No, its BATS!!!!!!!!!! Try again."); 
      Bat = BAT.nextLine(); 
      Bat = Bat.toUpperCase(); 
      if(Bat == "BATS") 
      { 
      System.out.println("YOU'RE RIGHT THEY ARE !!!!!"); 
      break; 
      } 
     } 
    } 
} 
+0

Вы говорите, я должен использовать объект .equals() ;? – Nick

ответ

0

while(Bat != "BATS") это неправильно

вам нужно сравнить содержание, а не ссылки ...


ли вместо:

while(!"BATS".equalsIgnoreCase(Bat)) 
Смежные вопросы