Методы, которые вы вызываете в классе Boolean
, не проверяют, содержит ли строка допустимое логическое значение, но они возвращают логическое значение, представляющее содержимое строки: поместите «true» в строку, они вернуть true
, поставить «ложь» в строку, они вернут false
.
Однако вы, безусловно, можете использовать эти методы для проверки допустимых логических значений, так как я ожидаю, что они вызовут исключение, если строка содержит «hello» или что-то не логическое.
Оберните это в методе ContainsBoolString
и все готово.
EDIT
Кстати, в C # есть такие методы, как bool Int32.TryParse(string x, out int i)
, которые проверяют, можно ли проанализировать содержимое, а затем возвращают проанализированный результат.
int i;
if (Int32.TryParse("Hello", out i))
// Hello is an int and its value is in i
else
// Hello is not an int
Тесты указывают, что они работают намного быстрее, чем следующие:
int i;
try
{
i = Int32.Parse("Hello");
// Hello is an int and its value is in i
}
catch
{
// Hello is not an int
}
Может быть, в Java есть похожие методы? Я давно не пользовался Java ...