У меня естьJava подстроки с одним символом
String x = g.substring(0, 1);
if (x == "S") {
stuff
}
У меня есть строка, «Безопасность», а «материал» не бежит и мои часы говорят, значение х = S и x=="S"
= ложь.
У меня естьJava подстроки с одним символом
String x = g.substring(0, 1);
if (x == "S") {
stuff
}
У меня есть строка, «Безопасность», а «материал» не бежит и мои часы говорят, значение х = S и x=="S"
= ложь.
==
используется для identity
сравнения, и он проверяет, являются ли два reference
указывает на тот же объект (в вашем случае объект String
).
Вы должны использовать метод equals
сравнить содержимое строки:
if (x.equals("S"))
Это сравнивает ссылки не строка равенства x=="S"
вы должны использовать "S".equals(x)
.
if(x.equals("S"))
== проверяет ссылку, а не значение.
Используйте метод equals()
вместо класса String, а не ==
.
Для сравнения содержимого строки вам необходимо использовать String.equals
. Оператор ==
используется для сравнения ссылок на объекты.
Переключение позиций аргументов позволит избежать NullPointerException
:
if ("S".equals(x))
Вы должны использовать метод .equals
для сравнения строк (и любые не-примитивы в целом).
if (x.equals("S")) {
//stuff
}
В Java equals()
проверяет равенство и ==
проверяет идентичность.
Много проблем ...
Ваша переменная x
является String
! Вы не должны использовать оператора ==
, используйте .equals()
вместо
Кроме того, пока вы на нем, вы должны использовать .equalsIgnoreCase()
для игнорирования случая.
Кстати, я должен отметить, что есть функция String.charAt(int), которая возвращает символ в указанном месте ...
Но если вы хотите, чтобы выбрать все строки (ваш вопрос не раскрывает свои первоначальные намерения, почему и что вы пытаетесь достичь), но я хотел бы посмотреть в регулярные выражения, используя String.matches()
Почему бы вам не использовать функцию charAt
и сделать это так:
char x = g.charAt(0);
if (x == 'S') {
// Stuff
}
Если вы не хотите использовать символ, используйте метод equals
в сравнении if
блока как:
String x = g.substring(0, 1);
if (x.equals("S")) {
// stuff
}