java map 自定义类型函数调用?

import java.util.*;
class student 
{

String name;
int score;
student(String name,int score)
{
this.name=name;
this.score=score;

}

void shuchu()
{
System.out.println(name+" "+score);

}

}
public class banji_1
{
public static void main(String ag[])
{

Map aa=new TreeMap();
aa.put(0,new student("a",1));
aa.put(1,new student("b",2));
aa.put(2,new student("c",3));
for(int i=0;i<4;i++)
{
aa.get(i).shuchu();

}

}
}
编译报错



喵喔喔
浏览 800回答 2
2回答

宝慕林4294392

aa.get(i).shuchu();改成((student)aa.get(i)).shuchu();get()返回的是Object类型需要强制转换成你需要的对象类型或者在Map声明时就规定泛型

芜湖不芜

将for语句改变成下面的就可以了for(int i=0;i<3;i++){((student) aa.get(i)).shuchu();}
打开App,查看更多内容
随时随地看视频慕课网APP