Почему я не могу сделать это в java?
Object[] o = (Object[])(new int[]{0,1,2,3.14,4});
У меня есть метод, который получает объект и затем представляет его как строку, но в зависимости от его типа (примитив, примитивная оболочка, массив и т. д.). Когда я создавал модульный тест, я передавал массив как Object , что нормально , но когда я выполняю приведение этого объекта в Object [] , я получаю ClassCastException . Это происходит только с массивами примитивных типов. Есть ли способ избежать такого поведения? Если нет, мог бы кто-нибудь объяснить, в чем причина такого поведения на виртуальной машине Java.
Любая помощь приветствуется.