import java.io.IOException;
import java.util.*;
public class calling {
public static int num1() {
int x;
Scanner scanner = new Scanner (System.in);
System.out.println("Please enter a number called x: ");
x=scanner.nextInt();
return x;
}
public static int num2() {
int y;
Scanner scanner = new Scanner (System.in);
System.out.println("Please enter a second number called y: ");
y=scanner.nextInt();
return y;
}
public static String operand() {
Scanner input = new Scanner (System.in);
String s;
System.out.println("What process would you like to do? *, /, + or - ?");
s=input.next();
return s;
}
public static void calculation(int x, int y, String s) {
String t;
Scanner input = new Scanner(System.in);
if (s.equals("*")) {
System.out.println("\nThe product of these numbers is:" + (x*y));}
else
if (s.equals("+")) {
System.out.println("\nThe sum of these numbers is: " + (x+y));}
System.out.println("\nDo you want x or y to be the dividor/subtractor?: ");
t=input.next();
if (t.equals("y") || t.equals("Y") ) {
if (s.equals("/")) {
System.out.println("\nThe quotient of these numbers is: " + (x/y));}
else
if (s.equals("-")) {
System.out.println("\nThe difference of these numbers is: " + (x-y));}}
else
if (t.equals("x") || t.equals("X")){
if (s.equals("/")) {
System.out.println("\nThe quotient of these numbers is: " + (y/x));}
else
if (s.equals("-")) {
System.out.println("\nThe difference of these numbers is: " + ((y-x)));}}
}
public static void main (String [] args) throws IOException {
int x1=num1();
int y1=num2();
String s1=operand();
calculation(x1, y1, s1);
}
}
如何将这些方法调用到新类中,以便我可以从中运行程序?我通常理解你会把class.nameofmethod()的名字;但我怎么会传递参数等? 我是Java的初学者,所以非常感谢所有的帮助! 先谢谢你们。
答案 0 :(得分:3)
举个例子:
int x = calling.num1();
System.out.println(x);
...将num1()
方法的结果存储在x中,然后打印出x的内容。
在参数方面:
calling.calculation(4,5,"+");
你需要问这个事实表明你应该离开并阅读并完成一些非常基本的Java教程,例如:http://download.oracle.com/javase/tutorial/getStarted/index.html - 这根本不是攻击,只是一个建议如何最好地拓宽你的知识。
答案 1 :(得分:1)
没有参数要传递,因为所有方法都是无参数的。你要做的是接受从方法返回的int:
int myResult = Myclass.MyMethod();
编辑:除了您的计算方法,但您似乎知道如何使用它。现在我不确定你的问题是什么,因为你在main方法中使用OK方法(除了你没有从类名称中调用它们,但是如果main方法在类本身)。
答案 2 :(得分:1)
由于所有方法都是静态的,你可以这样做:
int x1=calling.num1();
int y1=calling.num2();
String s1=calling.operand();
calling.calculation(x1, y1, s1);
但是,如果你没有让它们成为静态而你想调用它们,那么你实例化一个类并调用该类中的方法。
calling app = new calling();
int x1=app.num1();
int y1=app.num2();
String s1=app.operand();
app.calculation(x1, y1, s1);
答案 3 :(得分:0)
你有比这更大的问题。 请开始阅读Robert C. Martin的书“清洁代码”,您的代码不是面向对象的