繁体   English   中英

我可以将输入法从main方法调用到类中的另一个方法中吗

[英]Can I invoke input from main method into another method in the class

我需要在同一个类中的其他方法中使用从主方法中收集的信息。 那可能吗? 如果是这样,我该怎么做? 基本上,我必须在main方法中收集信息,然后在其他方法中实现。 救命!

如果我获得信息,请说:

import java.util.Scanner;

public class MyClass
{


 public static double main (String[] args)

 {

  double x, y, z;
  Scanner scan = new Scanner(System.in);

  System.out.print ("Please enter x value: ");
  x= scan.nextDouble();

  System.out.print ("Please enter y value: ");
  y= scan.nextDouble();

  System.out.print ("Please enter z value: ");
  z= scan.nextDouble();

 }

public static void OtherMethod()
 {
  int a=0;
  while(x<y)
  {
  a++;
  double b=x* (z/100);
  x+=b;
  }
   System.out.println("After " + a + " time at " + z+ "%, you will have " + "$" + x);
 }
}

听起来您正在询问如何将参数传递给函数。

尝试写作:

public static void OtherMethod(double x, double y, double z)

内部主:

OtherMethod(x,y,z)

是。 如果将OtherMethod的第一行OtherMethod

public static void OtherMethod(double x, double y, double z)

然后您可以用main从主叫它

OtherMethod(x, y, z);

出于一个方法调用的目的,这使OtherMethod定义的x, y, z等于main定义的x, y, z

免费咨询

作为记录,您的代码片段中有一些不良的编程习惯。 由于您是个初学者,所以现在还可以,但是不要养成任何一个习惯。

  • 单字母变量名称。 对于使用此代码的人来说, x是一笔钱, y是您的储蓄目标, z是利率,依此类推,这并不明显。 您应该使用完整的单词,甚至多个单词作为变量。 savingsTargetinterestRate
  • 间距和缩进不一致使代码难以阅读。
  • 大多数人不愿意将{字符放在一行上。 而是将其放在上一行的末尾。
  • 您已经使用了浮点数来赚钱。 永远不要将金额存入doublefloat变量中。 这些不是为带有小数的精确数学而设计的。 学习改为使用BigDecimal类。
  • 用静态方法代替创建对象通常表明设计不佳。 如果有许多静态方法,这也将使大型程序的测试更加困难。
  • 方法名称应以小写字母开头。 它使您的代码更易于遵循。

在您将来的编程工作中,只需要考虑几件事。

声明double x, y, z; 作为班级的静态服装-

private static double x;
private static double y;
private static double z;

在主方法内部,然后可以调用OtherMethod();

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM