[英]How to call a method in an If-statement inside an If-statement?
這是我的代碼:
import java.util.Scanner;
class test {
public static void main(String[]args){
Scanner in=new Scanner(System.in);
System.out.print("Enter disc to move: ");
int disc=in.nextInt();
System.out.print("Enter destination: ");
char dest=in.next().charAt(0);
if ((disc==1)&&((dest=='B')||(dest=='b'))){
AAB(disc,dest);
{
printM(disc, dest);
{
if ((disc==2)&&((dest=='C')||(dest=='c')))
ACB(disc, dest);
}
}
}
}
public static void AAB(int disc, char dest){
System.out.println("A: 32");
System.out.println("B: 1");
System.out.println("C: ");
System.out.println(" ");
}
public static void ACB(int disc, char dest){
System.out.println("A: 3");
System.out.println("B: 1");
System.out.println("C: 2");
System.out.println(" ");}
}
}
我的輸出看起來像:
Enter disc to move: 1
Enter destination: b
A: 32
B: 1
C:
Enter disc to move: 2
Enter destination: c
現在,我的問題是當我輸入2
作為磁盤並輸入c
作為目標磁盤時,它不輸出我的輸出。 我針對這種情況制定了一種方法,即ACB
。 有人可以幫我語法嗎?
我正在使用這些代碼進行作業(河內塔)
無論disc
等於1還是2 ,都將永遠不會嵌套嵌套if
語句中的代碼。 更改
if ((disc==1)&&((dest=='B')||(dest=='b'))){
AAB(disc,dest);
{
printM(disc, dest);
{
if ((disc==2)&&((dest=='C')||(dest=='c')))
ACB(disc, dest);
}
}
}
至
if ((disc==1)&&((dest=='B')||(dest=='b'))){
AAB(disc,dest);
printM(disc, dest);
}
else if ((disc==2)&&((dest=='C')||(dest=='c')))
ACB(disc, dest);
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.