所以,这是其检查的日期范围内的可用的房间以及意在返回房间号,其是可用的INT []阵列的方法的一部分。
ArrayList roomNums = new ArrayList();
roomNums.toArray();
for (Room room: rooms){
int roomNumber = room.getRoomNumber();
if(room.getRoomType() == roomType && isAvailable(roomNumber, checkin, checkout)){ // This works fine, ignore it
roomNums.add(roomNumber);
}
}
return roomNums.toArray(); // Error here, return meant to be int [] type but it's java.lang.Obeject []
在在roomNums.toArray结束时发生的误差()
我看到别人这样做一个衬垫和它的工作对他们来说,为什么它不适合我?
在roomNums每个元素是一个整数。(我认为)
什么是打印包含可用房间的整数数组最快和最简单的方法?我需要做一个循环或者我可以做一些与此.toArray()一个衬垫或类似的一些东西?
谢谢
不要使用原始类型。更换ArrayList roomNums = new ArrayList();
用
ArrayList<Integer> roomNums = new ArrayList<>();
然后返回它 Integer[]
roomNums.toArray(Integer[]::new);
如果你需要原始的阵列,那么就可以用流完成:
return roomNums.stream().mapToInt(Integer::valueOf).toArray();
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句