我剛開始學習Java,並編寫了這段代碼來練習創建接口。我意識到在這裏使用接口關係可能不是它應該被實際使用的方式,但我只是爲了練習和基本理解而這樣做。在多個類中使用掃描器
因此,無論如何,我創建了程序,讓用戶輸入他們想要執行的操作,然後執行上述操作。爲此,用戶提供兩個輸入:首先是他們想要執行的操作,然後是他們希望執行的操作。例如,如果他們想要找到4的平方根,他們首先輸入2來選擇平方根,然後輸入4來表示他們想要找到4的平方根。爲此,我打開掃描儀在多個類上的類。但是,關閉任何一個類中的掃描器都會產生一個錯誤,因爲顯然一旦關閉它在文件中就無法重新打開。我搜索了很多,大部分建議都是圍繞着說使用像這樣的掃描器的多個實例而產生問題,因此只創建一個。雖然我可以重寫這個代碼,以使這一調整,我想知道是否有辦法,我可以做我所做的事情不會產生任何警告信息,就像他們在這段代碼彈出:
import java.util.Scanner;
public class Operation
{
public static void main(String[] args)
{
Scanner in = new Scanner(System.in);
System.out.println("1. Square");
System.out.println("2. Square Root");
System.out.print("Enter Number: ");
int choice = in.nextInt();
switch(choice)
{
case 1:
Squaring s1 = new Squaring();
s1.getDim();
s1.operate();
break;
case 2:
Root r1 = new Root();
r1.getDim();
r1.operate();
}
}
}
interface Method
{
void getDim();
void operate();
}
class Squaring implements Method
{
double n, r;
public void getDim()
{
Scanner in = new Scanner(System.in);
System.out.print("Input Number: ");
n = in.nextDouble();
}
public void operate()
{
r = n*n;
System.out.println("Squared of " + n + " is = " + r);
}
}
class Root implements Method
{
double n, r;
public void getDim()
{
Scanner in = new Scanner(System.in);
System.out.print("Input Number: ");
n = in.nextDouble();
in.close();
}
public void operate()
{
r = Math.sqrt(n);
System.out.println("Square root of " + n + " is = " + r);
}
}
您粘貼的代碼不會顯示任何警告/錯誤。它工作得很好。你還想要什麼? – progyammer