我有下面的代碼:JAVA鑄造與Maven編譯
public String foobar(Object foo, Map<String,Object> parametersMap){
...
boolean isFoo = (boolean) parametersMap.get("is_foo");
...
}
我希望它拋出一個類轉換異常(Map.get返回一個對象類型),但事實並非如此。 我正在使用java(7),spring suit和maven(所有項目都有語言級別7)。 該項目編譯並運行良好。
只有一個地方調用這個方法,並且這個參數總是被設置(type primitive boolean)。 編譯器是否有可能以某種方式分析流並識別它(因爲沒有拋出類拋出異常)?
最佳
你確定沒有轉換的最後一條語句對'Map parametersMap'有效嗎? –
Puce
@Puce - 坦率地說,不,我是這麼認爲的。將盡快嘗試。它不適合你,我認爲? – kostja
我沒有嘗試過,但是將一個對象分配給布爾值而沒有進行強制轉換...一個對象的布爾值,好的,反之亦然,你需要一個強制轉換。 – Puce