2013-06-19 83 views
-1

我正在处理一个程序,我想要一个布尔数组来返回席位的状态。布尔数组返回空而不是假

False = empty. 

boolean seats [] = new boolean[10]; 
for(int i = 0; i<seats.length; i++) 
     seats [i] = false; 
for(int c = 0; c<seats.length; c++) 
    while (seats[c] = false) 
     System.out.printf("Seat %d is empty\n",c); 

我想这个数组返回。

Seat 1 is empty 
Seat 2 is empty 
Seat 3 is empty 
[...] 

如何使虚假返回字符串为空。

谢谢

+1

至少把你的时间制定好你的问题,格式化代码... – Madsen

+0

你好约翰,作为问题是,很难理解你想要什么,试着编辑这个问题,使它变得更客观。此外,它有助于包括代码的语言 – RMalke

+1

数组不会“返回”任何东西,它们只是一个持有值的结构。您的代码可以以任何您想要的方式解释这些值。也许而不是你想创建一个_object_(它内部包含一个数组,最有可能)的数组而不是数组? – David

回答

2

使用以下命令:

boolean seats [] = new boolean[10]; 
for(int i = 0; i<seats.length; i++){ 
    seats [i] = false; 
} 
for(int c = 0; c<seats.length; c++){ 
    if (false == seats[c]){ 
    System.out.printf("Seat %d is empty\n",c); 
    } 
} 
+0

感谢哥们。哇,我太亲近了。再次感谢伟大工程。 –

2

在您的比较中,您需要使用== not =。

顺便说一下,你的代码写得很糟糕。循环内部不需要while循环。一个是否应该使用,否则它会在无限循环