Reputation: 11
I keep getting errors when I try to compile these codes below, I'm currently using 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
Error:
--------------------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.
Upvotes: 0
Views: 272
Reputation: 11712
while ((counter = 0)&&(number > 0))
is never true, because (counter = 0)
assigns counter to be 0
and the value of that statement is the value of counter
: 0
. And 0
is int
and can't be converted to boolean
.
Upvotes: 0
Reputation: 178313
You can't use the =
operator to compare values; that's the assignment operator. Use ==
to compare your int
values:
while ((counter == 0)&&(number > 0)) {
The assignment operator here evaluates to an int
, yielding the error message that you received.
Upvotes: 2
Reputation: 16952
Where is the question?
There are so many errors in this code... To check if two integers are equal you have to write == not =. (In while and in if).
Upvotes: 0