2014-10-28 47 views
1

尝试编译时,我收到了错误消息:二进制运算符'Bad操作数类型'| |”第一种类型:int;第二种类型:int。二元运算符'|的不良操作数类型|”第一种类型:int;第二种类型:int。这是什么意思?

这是我写的代码,虽然它没有完成。

public class Main 
{ 
    public static void main (String [] args) 
    { 
     int squareSize = BIO.getInt(); 

     for(int row = 0; row == squareSize; row++) 
     { 
      if (row = 1 || row = squareSize) 
     { for(int stars = 0; stars <=squareSize; stars++) 
      System.out.print("*"); 

    }  
}   

请你能告诉我这是什么意思,我怎么修复它?

+0

行== 1 ||行== squareSize – ursa 2014-10-28 20:20:51

回答

2
if (row = 1 || row = squareSize) 

=分配操作者,而不是一个平等/关系运算符。

我想你想要==

if (row == 1 || row == squareSize) 
0

变化if (row = 1 || row = squareSize)if (row == 1 || row == squareSize)

现在发生的事情是,您正在对变量行进行赋值,然后对数字进行OR运算,这是错误的。

0

不要===运营商之间的混淆:

if (row == 1 || row == squareSize) 

=用于将值assignate给一个变量,而第二被用于处理两个变量之间的逻辑比较。

0

需要使用==未=

if (row == 1 || row == squareSize) 
相关问题