2 回答

TA貢獻1844條經驗 獲得超8個贊
自定義實現(xiàn)怎么樣?
使用地圖并定義 true 和 false 的所有值
使用列表;如果值在列表中,則為 true,否則為 false
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
// Define true and false values
Map<String, Boolean> truthiness = new HashMap<>();
truthiness.put("yes", true);
truthiness.put("1", true);
truthiness.put("true", true);
truthiness.put("t", true);
truthiness.put("ya", true);
truthiness.put("nein", false);
//etc
// Define only the true values
List<String> trueValues = Arrays.asList("yes", "1", "true", "t", "ya");
for(int i = 0; i < 5; ++i) {
String value = sc.nextLine().toLowerCase();
System.out.println("map: " + truthiness.get(value));
System.out.println("list: " + trueValues.contains(value));
}
}
輸出
yes
map: true
list: true
1
map: true
list: true
t
map: true
list: true
ya
map: true
list: true
nein
map: false
list: false

TA貢獻1998條經驗 獲得超6個贊
Apache?BooleanUtils有一個toBoolean
像這樣工作的方法,但是它并沒有0/1
像我在文檔中看到的那樣解析
'true'、'on'、'y'、't' 或 'yes'(不區(qū)分大小寫)將返回 true。否則,返回 false。
添加回答
舉報