Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/351.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 使用另一个类中的方法向数组添加数字?_Java_Arrays_Class_Methods - Fatal编程技术网

Java 使用另一个类中的方法向数组添加数字?

Java 使用另一个类中的方法向数组添加数字?,java,arrays,class,methods,Java,Arrays,Class,Methods,我正在学习java,并试图找出如何将这些方法从第二个类实现到我的主类中。该程序接受用户输入,将数字添加到数组中,然后我需要使用下面预先指定的方法打印以下内容。下面方法中的参数让我感到困惑 public static double findMin(double[] numbers, int count) //count is the count of numbers stored in the array public static double computePositive

我正在学习java,并试图找出如何将这些方法从第二个类实现到我的主类中。该程序接受用户输入,将数字添加到数组中,然后我需要使用下面预先指定的方法打印以下内容。下面方法中的参数让我感到困惑

 public static double findMin(double[] numbers, int count) //count is the count of numbers        stored in the array

 public static double computePositiveSum(double[] numbers, int count)

 public static int countNegative(double[] numbers, int count)
基本上,我对如何将两个类之间的所有变量和数组链接起来,以便它们能够识别参数并将正确的值返回到输出min、sum和负数感到困惑。我想在main方法中使用数组吗



基本上,我现在所做的修复是在main方法中创建变量,然后通过我创建的链接到第二个类的对象的参数传递main方法中的变量。这看起来可以吗?

如果您已经拥有了数组,那么您需要的是调用您的方法并将此值传递给它

假设您拥有以下阵列:

 double[] num = {1.2,2.3};
您的
count
num
数组的长度,因此计数为:

  int count = num.length;
然后调用您的方法并将参数传递给它,如下所示:

findMin(num , count );
computePositiveSum(num , count );
countNegative(num , count );


注意:对于这样的问题,你们需要阅读《对不起,伙计们》。已经有一段时间了,我只需要再复习一下。我通过在main方法中创建数组和count变量来解决这个问题,然后通过参数传递这些变量,以便第二个类中的方法可以读取它们。感谢您的快速响应和帮助。

您不需要计数变量,可以使用
myarray.length

所以你的代码应该是这样的:

public static void main(string [] args)
{
    double[] myarray = {5.3, 69.365, 125, 2.36};

    double result = MyClass.findMin(myarray);

}

public class MyClass
{
    public static double findMin(double[] numbers) 
    {
        // your impl
    }

    public static double computePositiveSum(double[] numbers)
    {
        // your impl
    }

    public static int countNegative(double[] numbers)
    {
        // your impl
    }
}

可以在派生类中创建主类的对象引用。然后使用主类的对象调用这些方法

class Main
{
  ------
} 

class derived
{
  Main m = new Main();double[] A=new double[1];
    Scanner s = new Scanner(System.in);
    int i=0,wc=1;
    int arrayGrowth=1;
    while(s.hasNext())
    {
      if (A.length == wc) {
                // expand list
                A = Arrays.copyOf(A, A.length + arrayGrowth);
                wc+=arrayGrowth;
               }
    A[i]=s.nextDouble();
    i++;
    }
    int len=A.length-1;
  m.findMin(A,len);
  m.computePositiveSum(A,len);
  m.countNegative(A,len);
}

出于好奇,是否有任何理由需要将
count
作为参数传递,而不是在这些函数中使用
numbers.length
?在调用类中是否有适当的变量?只需将这些作为参数传递给方法…数组的大小在Java中是不可变的,所有方法调用都是按引用的值传递的,因此您不能在方法中实例化新数组,将其分配给参数,并期望调用方看到新实例。