類型安全:未經檢查的從 Object 到 ArrayList 的強制類型轉換 警告的解決方法


關於出現類型安全:未經檢查的從 Object 到 ArrayList 的強制類型轉換 警告的解決方法

出現的問題:

出現警告原因如果所示,由於是未經檢查就只直接進行強轉導致出現該警告,如果從服務器端傳過來其他類型的數據則強轉時候就會出錯

解決方法:

Object obj = request.getAttribute("timeSpent");
		//檢查是不是ArrayList
		if(obj instanceof ArrayList<?>)
		{
			//取出ArrayList
			ArrayList< ? > al = (ArrayList< ? >) obj;
			if (al.size() > 0) {
			    // 一個個轉換過來.
			    for (int i = 0; i < al.size(); i++) {
			      // 還得判斷是不是String
			      Object o = al.get(i);
			      if(o instanceof String )
			      {
			    	  timeSpent.add((String)o);//timeSpent是前面自己定義的ArrayList
			      }
			    }
		}
		}

結果:


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM