Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/silverlight/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
java.util<&燃气轮机;无法将哈希集转换为布尔值_Java_Boolean - Fatal编程技术网

java.util<&燃气轮机;无法将哈希集转换为布尔值

java.util<&燃气轮机;无法将哈希集转换为布尔值,java,boolean,Java,Boolean,我在这个代码中有一个错误 public Hotel() { occupiedRooms = new HashSet<Room>(); PapersOrdered = new HashMap <String,ArrayList<String>>(); } public String getGuest(String roomNo) { for (Room room; occupiedRooms;) { if(

我在这个代码中有一个错误

public Hotel()
{
    occupiedRooms = new HashSet<Room>();
    PapersOrdered = new HashMap <String,ArrayList<String>>();

}


 public String getGuest(String roomNo)
{
    for (Room room; occupiedRooms;)
    {
        if(room.getRoomNo().equals(roomNo))     return room; getGuest();
        return "room " + roomNo + " is not occupied" ;
    }
}
公共酒店()
{
occupiedRooms=新哈希集();
PapersOrdered=newhashmap();
}
公共字符串getGuest(字符串roomNo)
{
用于(房间;占用房间;)
{
如果(room.getRoomNo()等于(roomNo))返回房间;getGuest();
返回“房间”+房间号+“未占用”;
}
}
被占用的房间会收到一个错误,表示java.util.Hashset无法转换为布尔值,
纠正这个问题的最佳方法是什么?(所有代码不在这里,但相关的)

< P>是的,<代码> HasSET 不是布尔值,不能转换为布尔值,而正则for循环在中间段(布尔值表达式)中确定布尔表达式(决定循环终止的时间段)。p> 如果要迭代集合中的所有值,可以使用增强的for循环:

for (Room room : occupiedRooms)
{
    if(room.getRoomNo().equals(roomNo))
        return room;
    getGuest();
    return "room " + roomNo + " is not occupied" ;
}
但是,不确定for循环有多大意义,因为它总是在测试第一个
房间
后返回一些内容,因此不会检查剩余的房间。

没有参数的
getGuest()
调用有什么用?你也许可以摆脱它。您可能还希望在
for
循环之外返回故障,而不是在循环中。