ArrayList: unchecked call
Релиб
Форумы       Участники    Календарь    Кто он-лайн?
Добро пожаловать, гость ( Вход | Регистрация )
        



ArrayList: unchecked call Expand / Collapse
Автор
Сообщение
07.09.2006 13:39
Forum Member

Forum MemberForum MemberForum MemberForum MemberForum MemberForum MemberForum MemberForum Member

участник
Last Login: 12.12.2006 17:30
Сообщ.: 45, Visits: 83
 

import java.util.ArrayList;

public class Foo{

Foo(){

ArrayList array = new ArrayList(0);

try{

array.add("1");

}catch(RuntimeException re){

System.out.println("re: "+re.getMessage() );

}

}

public static void main(String[] args){

new Foo();

}

}

при компиляции javac -Xlint:unchecked Foo.java

дает предупреждение

Foo.java:6: warning: [unchecked] unchecked call to add(E) as a member of the raw type java.util.ArrayList

array.add("1");

            ^

java - sun - 1.5.0_06

что это значит, и как с этим бороться

..

Сообщ. #904016
07.09.2006 15:05
Supreme Being

Supreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme Being

участник
Last Login: 23.05.2007 20:20
Сообщ.: 662, Visits: 5 795
Это означает, что ты используешь java 5, и не указываешь тип объектов, которые будут храниться в ArrayList. Бороться так:

List<String> array = new ArrayList<String>();
array.add("1");
Сообщ. #904023
07.09.2006 17:15
Supreme Being

Supreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme Being

участник
Last Login: 02.02.2008 19:48
Сообщ.: 480, Visits: 5 178
вы сами просите компилятор обращать на это внимание здесь:

javac -Xlint:unchecked Foo.java

Сообщ. #904039
07.09.2006 17:41
Forum Member

Forum MemberForum MemberForum MemberForum MemberForum MemberForum MemberForum MemberForum Member

участник
Last Login: 12.12.2006 17:30
Сообщ.: 45, Visits: 83
спасибо,

ясно. java рекомендует типизировать ArrayList.

-Xlint: unchecked использовал специально, мне было непонятно в каком месте был unchecked call

Сообщ. #904041
07.09.2006 17:59
Supreme Being

Supreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme Being

участник
Last Login: 23.05.2007 20:20
Сообщ.: 662, Visits: 5 795
Да, но ты ж понимаешь, что не всегда это нужно. Можно и забить =)
Сообщ. #904042
07.09.2006 18:14
Supreme Being

Supreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme Being

модератор
Last Login: 10.11.2008 0:08
Сообщ.: 1 298, Visits: 12 501
в принципе, указывать тип всегда можно, просто в самом общем случае нужно (читать можно) указывать тип Object
а вообще Danissimo прав
Сообщ. #904043
« пред. тема | след. тема »


Эту тему читают Expand / Collapse
Посетители: 0 (0 гостей, 0 участников, 0 скрыт.участников)
Сейчас нет участников, просматривающих тему.
Модераторы: Alexey, boombastik, bazile, mishgun, pl

Время GMT +3:00, Сейчас 2:14