Hello everyone,
I am having trouble finishing my program. I am having the most trouble with the method, as described in my book, parseInt(char[]). I can't figure out what to do, I don't know how to properly write the method for this.
I will include the entire program description for the perusal of anyone interested:
Problem Description:
Design a class named MyInteger. The class contains:
An int data field named value that stores the int value represented by this object.
A constructor that creates a MyInteger object for the specified int value.
A get method that returns the int value.
Methods isEven(), isOdd(), and isPrime() that return true if the value is even, odd, or prime, respectively.
Static methods isEven(int), isOdd(int), and isPrime(int) that return true if the specified value is even, odd, or prime, respectively.
Static methods isEven(MyInteger), isOdd(MyInteger), and isPrime(MyInteger) that return true if the specified value is even, odd, or prime, respectively.
Methods equals(int) and equals(MyInteger) that return true if the value in the object is equal to the specified value.
A static method parseInt(char[]) that converts an array of numeric characters to an int value.
A static method parseInt(String)that converts a string into an int value.
Any help would be greatly appreciated.
Here is what I have so far:
public class NewMyInteger {
public static void main(String[] args) {
MyInteger n1 = new MyInteger(5);
System.out.println("n1 is even? " + n1.isEven());
System.out.println("n1 is prime? " + n1.isPrime());
System.out.println("15 is prime? " + MyInteger.isPrime(15));
char[] chars = {'3', '5', '3', '9'};
System.out.println(MyInteger.parseInt(chars));
String s = "3539";
System.out.println(MyInteger.parseInt(s));
MyInteger n2 = new MyInteger(24);
System.out.println("n2 is odd? " + n2.isOdd());
System.out.println("45 is odd? " + MyInteger.isOdd(45));
System.out.println("n1 is equal to n2? " + n1.equals(n2));
System.out.println("n1 is equal to 5? " + n1.equals(5));
}
}
class MyInteger {
// Implement your class here
//int data field
int value;
//constructor that creates a MyInteger object for specified int value
public MyInteger(int value) {
this.value = value;
}
//get method to return the int value
public Integer getValue() {
return value;
}
//method for returning boolean value for isEven
public boolean isEven() {
if (value % 2 == 0) {
return true;
}
return false;
}
//method for returning boolean value for isOdd
public boolean isOdd() {
if (value % 2 != 0) {
return true;
}
return false;
}
// method for returning boolean value isPrime
public boolean isPrime() {
int factor = 0;
for (factor = 2; factor <= value / 2; factor++) {
if (value % factor != 0) {
return true;
}
}
return false;
}
public boolean isEven(int value) {
if (value % 2 == 0) {
return true;
}
return false;
}
public boolean isOdd(int value) {
if (value % 2 != 0) {
return true;
}
return false;
}
public static boolean isPrime(int value) {
return isPrime(value);
}
public static boolean isEven(MyInt myInt) {
return myInt.isEven(myInt.getValue());
}
public static boolean isOdd(MyInt myInt) {
return myInt.isOdd(myInt.getValue());
}
public static boolean isPrime(MyInt MyInt) {
return MyInt.isPrime(MyInt.getValue());
}
public boolean equals(int intValue) {
return value == intValue;
}
public boolean equals(MyInt myInt) {
return equals(myInt.getValue());
}
public static int parseInt(String s) {
return Integer.parseInt(s);
}
public static int parseInt() {
}
}