我正在使用java开发一个'自动测试用例生成器'。 java程序的输入将由prolog程序提供。如果输入是例如整数2,那么java程序应该对数字进行平方并将其显示为输出。以同样的方式,如果有3个整数,java程序应该一次接受一个数字并显示所有结果(我的意思是它应该测试每个案例)。
答案 0 :(得分:1)
正如我在评论中所说,所有输入都是Strings
程序必须将字符串转换为不同的对象类型以“测试每个案例”,例如在以下程序中。
import java.util.*;
public class CaseTester {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in).useDelimiter(" "); //separate entries with a space
String input;
while (sc.hasNext()) {
input = sc.next();
try {
double num = Double.parseDouble(input);
System.out.println("" + Math.pow(num, 2));
} catch (NumberFormatException e) {
//input was not a number so move to the next "test"
}
try {
URL test = new URL(input);
System.out.println("Valid URL");
} catch (MalformedURLException e) {
//input was not a valid URL so move to the next "test"
}
//put more tests here if you want
}
sc.close();
}
}
如果您感到困惑,您不必总是使用try
块进行测试。您也可以使用if
和switch
块(即if (input.equalsIgnoreCase("dog")) //do something
)