我一直在为学校做项目。基本上你必须用几个扫描仪制作一个脚本。例如:
我现在想为这两个函数制作一个Scanner类。但是1必须是一个整数,第二个必须是一个整数。如何确保函数返回double或整数。
我使用以下代码:
public static [Heres what goes wrong] vrager (String type, String tekst) {
Scanner vraag = new Scanner(System.in);
System.out.println(tekst);
type variable = vraag.next();
return variable;
所以通过调用函数就像:seconden = (vrager("int", "How many seconds?:));
但是如果我想让这个功能工作也会加倍,那么它就会出错,因为这个函数不会期望返回双精度数。
我该如何解决这个问题?
答案 0 :(得分:11)
double
可以表示每个可能的int
值,因此返回一个双倍。
答案 1 :(得分:3)
您不能拥有两个具有相同名称,相同参数但不同类型的函数。 至少有几种方法可以实现它,你可以这样做:
public static Number vrager (String type, String tekst) {
...
Double ret=....
--- or ---
Integer ret....
return ret;
}
查看课程Number
的文档另一种方法是使用泛型: How do I make the method return type generic?