これは私の教科書からのコードです:Javaジェネリックス型キャスティングが必要ですか?
Stack<String>[] a = (Stack<String>[]) new Stack[N];
私の質問は以下のとおりです。
- なぜそれが "新しいスタック[N]" とは?
作成された新しいスタックアレイでタイプ変換を行う必要があるのはなぜですか?私はちょうど
Stack<String>[] a = new Stack[N];
でそれを試してみましたが、それがコンパイルされ、罰金走りました。文字列をaにプッシュしてpopメソッドを印刷した後でも。またintを押すとすぐに私にコンパイルエラーが出るので、なぜ型変換する必要があるのですか?
Stack<String>[]
具体的には?
Java 8を使用していますか?ジェネリックシステムでは、いくつかの点が改善されています。 – Makoto