簡體   English   中英

while循環語句出現問題

[英]Trouble with while-loop statement

當我嘗試在下面編譯這些代碼時,我不斷收到錯誤消息,我目前正在使用JCreator。

import java.io.*;

public class Number //class name here, same as file name

 {
 public Number()throws IOException{//constructor, place class name here
 // use BufferedReader class to input from the keyboard
 // declare a variable of type BufferedReader
 BufferedReader input = new BufferedReader(new InputStreamReader(System.in));
 //declare variable for input
 String inputString;

int number;
int counter;
int square;
int cube;
String goodMessage = "Thank you";
String badMessage = "Sorry";

//begin houseKeeping()
System.out.print("Please input number: ");
inputString = input.readLine();
number = Integer.parseInt(inputString);

//begin squareCube()
counter = 0;
while ((counter = 0)&&(number > 0)) {
    square = number*number;
    cube = number*number*number;
    System.out.print(square);
    System.out.print(cube);
}
if (counter = counter + 1);
if (counter < 3);
System.out.print("Enter input number: ");

//begin finishUp()
if (number > 0)
    System.out.println(goodMessage);

    else 
    System.out.println(badMessage);

 }//end constructor

 public static void main(String [] args) throws IOException // main method

 {
 new Number(); //class constructor name
 } // end the main method
 } // end the program

錯誤:

--------------------Configuration: <Default>--------------------
D:\INFO\INFO 1391\Number.java:27: error: bad operand types for binary operator '&&'
    while ((counter = 0)&&(number > 0)) {
                        ^
  first type:  int
  second type: boolean
1 error

Process completed.

您不能使用=運算符比較值; 那是賦值運算符。 使用==比較您的int值:

while ((counter == 0)&&(number > 0)) {

賦值運算符在這里計算為int ,產生您收到的錯誤消息。

counter = 0

應該

counter == 0

while ((counter = 0)&&(number > 0))永遠不會為真,因為(counter = 0)將counter分配為0並且該語句的值是counter的值: 0 而且0int ,不能轉換為boolean

問題在哪里?

該代碼中有太多錯誤...要檢查兩個整數是否相等,必須編寫== not =。 (在while和if中)。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM