Member
Статус: Не в сети Регистрация: 04.01.2008 Откуда: Самара
пишу на javа 6.0 (среда eclipse). имеется код:
...
protected SortedMap<Double, Point3d>[] a;
protected SortedMap<Double, Point3d> b;
...
b = new SortedMap<Double, Point3d>;
a = new SortedMap[5]; /*замечание:не безопасное привидение типов SortedMap в SortedMap<Double, Point3d>*/
/*a = new SortedMap<Double, Point3d>[5] - не работает - невозможно создать массив указателей на SortedMap<Double, Point3d>*/
...
собственно вопрос: как правильно создавать массив коллекций, чтобы небыло замечаний? замечание это конечно не смертельно, но для общего развития хотелось бы знать что я делаю неправильно.
ЗЫ прошу сильно не пинать, т.к. пишу в основном на с++, а за яву взялся в виду специфичноси решаемой задачи.
_________________ Мыши кололись, плевались, но продолжали жрать кактус... (с)
Member
Статус: Не в сети Регистрация: 04.01.2008 Откуда: Самара
правильный ответ никак( sun рекомендует использовать ArrayList вместо массива.
ЗЫ чем больше пишу на Java, тем больше она кажется убогой по сравнению с Object Pascal/C/C++
_________________ Мыши кололись, плевались, но продолжали жрать кактус... (с)
Member
Статус: Не в сети Регистрация: 10.03.2004 Откуда: Минск
int21h Добавь аннотацию @SuppressWarnings("unchecked") на метод и не будет тебе ворнинга. Но это плохой путь, т.к. на самом деле у тебя будет массив SortedMap<Object, Object> создан. А правильно будет действительно использовать List<SortedMap<Double, Point3d>>. Тогда никаких проблем не будет. И будет нормальное type-safe присваивание.
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 29
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете добавлять вложения