问题描述
我很难尝试使用逻辑规则并使用OutOfOrder代码来使InOrder像OurOfOrder一样简单。
public class InOrder {
//Don't change this
public boolean OutOfOrder(int n1,int n2,int n3) {
return (n1 > n2) || (n2 > n3);
}
//The original and messy InOrder,leave this as an example of what not to do
public boolean inOrder(int n1,int n3) {
if (n2 > n1) {
if (n3 > n2) {
return true;
} else {
return false;
}
} else if (n2 == n1) {
if (n3 == n1) {
return true;
} else {
return false;
}
} else {
return false;
}
}
//The new and improved InOrder for part 5,call OutOfOrder
public boolean inOrder5a(int n1,int n3) {
return true; //replace this
}
//The newer and improved InOrder for part 6,inline
public boolean inOrder5b(int n1,int n3) {
return true;//replace this
}
}
解决方法
数字似乎是有序或无序的,没有第三种选择。
因此您可以将inOrder
实施为:
public boolean inOrder(int n1,int n2,int n3) {
return !outOfOrder(n1,n2,n3);
}
,
我会说:(n2 >= n1 && n3 >= n2)