java报错:listl cannot be resolved to a variable

我的源代码是Stringn=(String)movie.getRoom();RoomNDAOroomdao=newRoomNDAO();ArrayList<Room1>l... 我的源代码是
String n = (String)movie.getRoom();
RoomNDAO roomdao = new RoomNDAO();
ArrayList<Room1> list = roomdao.getAllSeatsInRoom1();
if(list!=null&&list.size()>0)
{
.............

我想改成:
String n = (String)movie.getRoom();
RoomNDAO roomdao = new RoomNDAO();
if(n.equals("1"))
{
ArrayList<Room1> list = roomdao.getAllSeatsInRoom1();
return list;
}

if(list!=null&&list.size()>0)
{
.........
提示报错 listl cannot be resolved to a variable 我的代码应该怎么改?
谢谢
展开
 我来答
Chandler4
2014-12-05 · TA获得超过405个赞
知道小有建树答主
回答量:1058
采纳率:0%
帮助的人:753万
展开全部
if(n.equals("1"))
{
ArrayList<Room1> list = roomdao.getAllSeatsInRoom1();
return list;
}

list作用于就是在这个打括号内。所以用的地方都必须写道这里面。
或者把list声明拿到更外面。
追问
if(n.equals("1"))
{
ArrayList list = roomdao.getAllSeatsInRoom1();
return list;
}
else if(n.equals("2"))
{
ArrayList list = roomdao.getAllSeatsInRoom2();
return list;
}

根据n的不同 调用不同方法得到的list不同 怎么改
追答

list里面的元素都继承同一个基类

然后

Base a = new drived1();

Base a = new drived2();


不过使用list的时候取元素时要instanceof判断类型后再使用。

{
ArrayList<BaseRoom> list = roomdao.getAllSeatsInRoom1();
return list;
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式