Design a class named MyInteger

CHALLENGE:

(The MyInteger class ) 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 getter method that returns the int value.
* The methods isEven(), isOdd(), and isPrime() that return true if the value in this object is even, odd, or prime, respectively.
* The static methods isEven(int), isOdd(int ), and isPrime(int ) that return true if the specified value is even, odd, or prime, respectively.
* The static methods isEven(MyInteger), isOdd(MyInteger), and isPrime(MyInteger) that return true if the specified value is even, odd,or prime, respectively.
* The methods equals (int) and equals (MyInteger) that return true if the value in this 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.
Draw the UML diagram for the class and then implement the class.

Write a client program that tests all methods in the class . Given that the definition of a prime number is a positive integer be sure to instruct the use to only enter positive integers.

SOLUTION:

```
public class MyInteger{
int value;

public MyInteger(int newValue){
value = newValue;
}

public int getValue(){
return value;
}

public boolean isEven(){
if(value % 2 ==0){
return true;
}
return false;
}

public boolean isOdd(){
if(value % 2 != 0){
return true;
}
return false;
}

public boolean isPrime(){
int i = 0;
for(i = 2; i <= value / 2; i++){
if(value % i != 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(MyInteger myInteger){
return myInteger.isEven(myInteger.getValue());
}

public static boolean isOdd(MyInteger myInteger){
return myInteger.isOdd(myInteger.getValue());
}

public static boolean isPrime(MyInteger myInteger){
return myInteger.isPrime(myInteger.getValue());
}

public boolean equals(int intValue){
return value == intValue;
}

public boolean equals(MyInteger myInteger){
return equals(myInteger.getValue());
}

public static int parseInt(String s){
return Integer.parseInt(s);
}
}

```