[英]Java Map can't get boolean
我有一個這樣的地圖:
Map<String, Boolean> settings = new HashMap<String, Boolean>();
如果我創建一個這樣的新布爾值:
boolean bool = settings.get("something");
有或沒有(布爾值)Gradle 說:
Cannot cast java.lang.Object to java.lang.boolean
(嗯,這個對象是一個布爾值)如果我嘗試做 parseBoolean(String) 編譯器工作正常,但如果我執行,我得到:
Cannot cast java.lang.Boolean to java.lang.String
那么,我該怎么做,我知道第一個是正確的並且對其他人有用。
編輯:有點錯誤,Gradle 說:
Object cannot be converted to boolean
這意味着幾乎相同。
方法get
將返回Boolean
(對象),它是boolean
(原始值)的包裝器。 因此,您可能需要應用演員表。
根據您的情況,也許您根本不需要存儲布爾值? 僅當字符串的值為“true”時才使用 HashSet 並添加字符串就足夠了嗎?
然后你可以寫:
boolean bool = settings.contains("something");
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.