试图创建一个程序,其中用户在我的主输入2个数字,显示菜单方法以显示用户想要使用switch语句对这两个数字进行的操作,然后4个其他方法将根据用户选择的选项从菜单中。如何将int从我的主要方法传递给计算方法?
我的问题是如何将我存储的2个int从我的主要通过我的其他4种方法进行计算?
我的解决方案是将请求和输入2个整数的过程移动到我的菜单方法中,但是我的导师特别要求将main中的整数传递给方法。
这是我到目前为止。 编辑我知道这个代码编译和作品,我想要的是是5行代码要求并获得在我的主要的2个整数,而不是我的菜单的方法编辑
public static void main (String [] args)
{
Scanner kb = new Scanner(System.in); //Allows input from keyboard
int iMenu; //Holds menu
System.out.print ("\n\nPress ENTER to continue");
kb.nextLine();
iMenu = menu(); //Calls menu method
}
public static int menu()
{
int iNum1; //Holds user input for number 1
int iNum2; //Holds user input for number 2
Scanner kb = new Scanner(System.in); //Allows input from keyboard
System.out.print("\nPlease enter the first integer: ");
iNum1 = kb.nextInt();
System.out.print("\nPlease enter the second integer: ");
iNum2 = kb.nextInt();
int iSelection; //Holds menu selection
System.out.println("\n\t M E N U ");
System.out.println("\n1>Sum up two integers" +
"\n2>Find the difference of two integers" +
"\n3>Find the average of two integers" +
"\n4>Find the product of two integers" +
"\n5>Find the quotient of two integers");
iSelection = kb.nextInt();
//}
switch (iSelection)
{
case 1:
sumTwoNumbers(iNum1, iNum2);
break;
case 2:
subTwoNumbers(iNum1, iNum2);
break;
case 3:
avgTwoNumbers(iNum1, iNum2);
break;
case 4:
multiTwoNumbers(iNum1, iNum2);
break;
case 5:
divTwoNumbers(iNum1, iNum2);
}
return iSelection; //End menu()
}
public static int sumTwoNumbers(int iNum1, int iNum2)
{
int iSum; //Holds sum of iNum1 and iNum2
iSum = iNum1 + iNum2;
System.out.println(iSum);
return iSum; //End sumTwoNumbers(int,int)
}
public static int subTwoNumbers(int iNum1, int iNum2)
{
int iSub; //Holds difference of iNum1 and iNum2
iSub = iNum1 - iNum2;
System.out.println(iSub);
return iSub; //End subTwoNumbers(int,int)
}
public static double avgTwoNumbers(int iNum1, int iNum2)
{
double dAvg; //Holds average of iNum1 and iNum2
dAvg = (iNum1 + iNum2)/2;
System.out.println(dAvg);
return dAvg; //End avgTwoNumbers(int,int)
}
public static int multiTwoNumbers(int iNum1, int iNum2)
{
int iMulti; //Holds product of iNum1 and iNum2
iMulti = iNum1 * iNum2;
System.out.println(iMulti);
return iMulti; //End multiTwoNumbers(int,int)
}
public static int divTwoNumbers(int iNum1, int iNum2)
{
int iDiv; //Holds quotient of iNum1 and iNum2
iDiv = iNum1/iNum2;
System.out.println(iDiv);
return iDiv; //End divTwoNumbers(int,int)
}
当我移动(输入2点的整数)到我的主,我得到的错误的负载大多是“不能在我所有的方法,例如找到符号:
Proj2.java:78: error: cannot find symbol
avgTwoNumbers(iNum1, iNum2);
^
symbol: variable iNum1
location: class Proj2
Proj2.java:78: error: cannot find symbol
avgTwoNumbers(iNum1, iNum2);
^
我假设它是因为INT WASN没有正确地传递给我的方法,但我不知道如何去做。
也许Java的一个基本的了解,您就可以回答你自己的问题。 – Qix 2014-10-10 16:50:23
谢谢,感谢。 – ChelseaH 2014-10-10 16:58:10