0

以下のコードをコンパイルしようとすると、エラーが発生し続けます。現在、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.
4

4 に答える 4

2

=演算子を使用して値を比較することはできません。それが代入演算子です。値==を比較するために使用します。int

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

ここでの代入演算子は に評価され、int受け取ったエラー メッセージが生成されます。

于 2013-05-06T19:23:01.057 に答える
2
counter = 0

する必要があります

counter == 0
于 2013-05-06T19:23:28.353 に答える
0

while ((counter = 0)&&(number > 0))が true になることはありません。これは、(counter = 0)counter が be に割り当てられ0、そのステートメントの値がcounter:の値であるためです0。And0intに変換できませんboolean

于 2013-05-06T19:25:02.653 に答える
0

質問はどこですか?

このコードには非常に多くのエラーがあります... 2 つの整数が等しいかどうかを確認するには、== ではなく == と書く必要があります。(while と if で)。

于 2013-05-06T19:25:11.923 に答える