[英]Loop printing twice java
我不知道為什么我的循環打印兩次。 我創建了兩個單獨的類,無論出於何種原因,我都無法弄清楚為什么它會向控制台打印兩次。 我不確定是不是因為我在 TableTest 中稱錯了? 或者如果我在其他地方做錯了什么。 我已經在我的 IDE 和我的命令行中運行了它,但我仍然遇到同樣的問題。
public class TableTest {
public static void main(String[] args){
int getBegin, getEnd;
System.out.println("Enter a number to start with: ");
Scanner input = new Scanner(System.in);
getBegin = input.nextInt();
while (getBegin < 0){
System.out.println("Please enter a number greater than 0.");
getBegin = input.nextInt();
}
System.out.println("Enter a number to end with: ");
getEnd = input.nextInt();
while (getEnd < 0 || getEnd < getBegin){
System.out.println("Please enter a number greater than 0. Or greater than your first input.");
getEnd = input.nextInt();
}
MultiplicationTable loop = new MultiplicationTable(getBegin, getEnd);
loop.printTable(getBegin, getEnd);
}
}
public class MultiplicationTable {
public MultiplicationTable(int begin, int end){
printTable(begin,end);
}
void printTable(int begin, int end){
System.out.println(String.format("%-10s %-10s %-10s", "Number", "Squared" , "Cubed"));
for (int i = begin; i <= end; ++i){
System.out.println(String.format("%-10s %-10s %-10s", i, i* i, i*i*i));
}
}
}
MultiplicationTable 中的構造函數調用printTable
方法,然后在 main 方法中再次調用它
您兩次調用printTable
方法:
在MultiplicationTable
類的構造函數中。
public MultiplicationTable(int begin, int end){ printTable(begin,end); }
在main
方法中並獲得MultiplicationTable
類的實例后:
MultiplicationTable loop = new MultiplicationTable(getBegin, getEnd); loop.printTable(getBegin, getEnd);
因此,出於這些原因,它執行了兩次printTable
方法。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.