2015-05-14 2 views
0

У меня есть меню с опцией «удалить». Это удалит из списка город, который пользователь представил ранее. И я прошу вас, есть ли какой-либо код, который будет игнорировать, если пользователь вводит регистр в верхнем регистре или в нижнем регистре?Case Sensitive matter in Java

Например, если в моем списке размещено 3 товаров: Нью-Йорк, Бухарест, Париж. Если пользователь попытается удалить один из элементов из списка, если он пишет «новый йорк», список элементов останется таким же, потому что он не использовал верхние регистры, и программа не распознает элемент ,

+0

Знаете ли вы о методе String equalsIgnoreCase()? – drgPP

+0

Я не знаю, как использовать его на самом деле, я новичок. –

+0

если (string1.equalsIngoreCase (строка2)) {doSomething(); } Его также приятно обрезать вход пользователя перед компиляционными строками. – Kiki

ответ

0

Вы можете использовать equalsIgnoreCase() для сравнения ввода с пунктом меню, этот метод сравнивает строки, игнорируя чувствительность к регистру.

if (input.equalsIgnoreCase(menuItem)) { 
    //do the logic 
} 

Если пункт меню = «Нью-Йорк» и вход = «Нью-Йорк», то если условие будет истинным.

0

Вы можете использовать equalsIgnoreCase() из объекта String. Вы можете назвать это статически, например:

String foo = "new york"; 
if (foo == String.equalsIgnoreCase("NeW YoRK") { 
// do something 
} 
1

Ваш список содержит список строк?

Если это так, у строк есть объект YOURSTRING.equalsIgnoreCase ("OTHERSTRING"), который вернет true, если они совпадают независимо от случая, и false, если они не совпадают.

String testString = "hello"; 
String testString2 = "HELLO"; 

//prints out true 
System.out.println(testString.equalsIgnoreCase(testString2)); 
0

Вы можете использовать compareTo() или compareToIgnoreCase(). «ignoreCase» игнорирует, если строка имеет нижнюю или верхнюю букву, она просто сравнит их.

"hola que tal".compareToIgnoreCase("hola, que tal"); // Returns 0 or True 
"hola que tal".compareToIgnoreCase("HOLA, que TAL"); // Returns 0 or True 

"hola que tal".compareTo("hola, que tal"); // Returns 0 or True 
"hola que tal".compareTo("HOLA, que TAL"); // Returns !=0 or False 

Сравните и CompareToIgnoreCase используется только со строками, однако, равен или equalsIgnoreCase быстрее.

2

Большое спасибо всем вам! Я починил это. Спасибо!!

для (I = 0; я < distanta.size(); я ++)

  { 
       if(distanta.get(i).getNume().equalsIgnoreCase(name)) 
        { 
        distanta.remove(i); 
        } 
      } 

Вот код, который я написал. Благодаря !!