设计一个名为 Mylnteger 的类。这个类包括:
- 一个名为 value 的 int 型数据域.存储这个对象表示的 int 值。
- — 个为指定的 int 值创建 Mylnteger 对象的构造方法。
- 一个返回 int 值的 get 方法。
- 如果值分别为偶数、 奇数或素数,那么isEven()、isOdd()和 isPrime(int) 方法都会返回true
- 如果指定值分别为偶数、 奇数或素数,那么相应的静态方法isEven(int)、isOdd(int)和 isPrime(int) 方法都会返回true
- 如果指定值分别为偶数、 奇数或素数,那么相应的静态方isEven(Mylnteger)、
isOdd(Mylnteger)和 isPrime(Mylnteger)会返回 true。 - 如果该对象的值与指定的值相等,那么 equals(int)和 equals(Mylnteger)方法返回
true。 - 静态方法 parselnt(char[ ])将数宇字符构成的数组转换为一个 int 值。
- 静态方法 parselnt(String)将一个字符串转换为一个 int 值。
编写客户程序测试这个类中的所有方法。
代码如下:
public class MyInteger {
private int value;
MyInteger (int value){
this.value = value;
}
public int getValue(){
return value;
}
public boolean isEven(int value){ // 偶数
return value % 2 == 0;
}
public boolean isOdd(int value){
return value % 2 == 1;
}
public boolean isPrime(int value){
int i;
boolean R = false;
if(value > 1){
for( i = 2;i<=getValue();i++){
if(getValue() % i == 0 && i == getValue())
R = true;
else
R = false;
}
return R;
}
else
return R;
}
public static boolean isEven(MyInteger integer){
return integer.getValue() % 2 == 0;
}
public static boolean isOdd(MyInteger integer){
return integer.getValue() % 2 == 1;
}
public static boolean isPrime(MyInteger integer){
int i;
boolean R = false;
if(integer.getValue() > 1){
for( i = 2;i <= integer.getValue();i++){
if(integer.getValue() % i == 0 && i ==integer.getValue())
R = true;
else
R = false;
}
return R;
}
else
return R;
}
public boolean equals(int value){
return this.value == value;
}
public boolean equals(MyInteger integer){
return this.value == integer.getValue();
}
public static void parseInt(char[] a){
String str = String.valueOf(a);
System.out.println("字符数组转整数:"+ Integer.parseInt(str));
}
public static void parseInt(String c){
System.out.println("字符串转整数:"+ Integer.parseInt(c));
}
public static void main(String[] args) {
MyInteger number = new MyInteger(3);
MyInteger number1 = new MyInteger(5);
char[] a = {'1','2','3','4'};
System.out.println("Even1: " + MyInteger.isEven(number) + " Odd1: " + MyInteger.isOdd(number) + " Prime1: " + MyInteger.isPrime(number));
System.out.println("Even2: " + MyInteger.isEven(number) + " Odd2: " + MyInteger.isOdd(number) + " Prime2: " + MyInteger.isPrime(number));
System.out.println("equals1: " + number.equals(3) + " equals2: " + number.equals(number1));
MyInteger.parseInt("1234");
MyInteger.parseInt(a);
}
}
运行结果: