Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/typo3/2.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 使用变量参数查找没有ArrayList的数字的乘积?_Java_Arraylist_Variadic Functions - Fatal编程技术网

Java 使用变量参数查找没有ArrayList的数字的乘积?

Java 使用变量参数查找没有ArrayList的数字的乘积?,java,arraylist,variadic-functions,Java,Arraylist,Variadic Functions,我正在练习可变参数,我希望能够找到数字的乘积。这是我能想出的第一个方法。我觉得不用ArrayList我也能做到,但我就是不知道怎么做 import java.util.*; public class variableMethod { public static void main(String[] satharel) { System.out.printf("The product of 5 and 10: \t\t%3d%n", productFinder(5

我正在练习可变参数,我希望能够找到数字的乘积。这是我能想出的第一个方法。我觉得不用ArrayList我也能做到,但我就是不知道怎么做

import java.util.*;

public class variableMethod
{
    public static void main(String[] satharel)
    {
        System.out.printf("The product of 5 and 10: \t\t%3d%n", productFinder(5, 10));
        System.out.printf("The product of 2 and 3 and 4: \t\t%3d%n", productFinder(2, 3, 4));
        System.out.printf("The product of 1 and 2 and 3: \t\t%3d%n", productFinder(1, 2, 3));
        System.out.printf("The product of 7 and 2 and 4 and 5: \t%3d%n", productFinder(7, 2, 4, 5));

    }

    public static int productFinder(int... num)
    {
        ArrayList<Integer> numbers = new ArrayList<Integer>();

        for(int n : num)
            numbers.add(n);

        int first = numbers.get(0);

        for(int i = 1; i < numbers.size(); i++)
            first *= numbers.get(i);

        return first;
    }
}
import java.util.*;
公共类变量方法
{
公共静态void main(字符串[]satharel)
{
System.out.printf(“5和10的乘积:\t\t%3d%n”,productFinder(5,10));
System.out.printf(“2、3和4的乘积:\t\t%3d%n”,productFinder(2、3、4));
System.out.printf(“1、2和3的乘积:\t\t%3d%n”,productFinder(1、2、3));
System.out.printf(“7和2以及4和5的乘积:\t%3d%n”,productFinder(7,2,4,5));
}
公共静态int productFinder(int…num)
{
ArrayList编号=新的ArrayList();
for(int n:num)
编号。添加(n);
int first=number.get(0);
对于(int i=1;i
当然你不需要列表。只需迭代数组并生成产品

public static int productFinder(int... num) {
        int result = 1;
        for (int i = 0; i < num.length; i++) {
            result *= num[i];
        }
        return result;
    }
publicstaticintproductfinder(int…num){
int结果=1;
for(int i=0;i
当然你不需要列表。只需迭代数组并生成产品

public static int productFinder(int... num) {
        int result = 1;
        for (int i = 0; i < num.length; i++) {
            result *= num[i];
        }
        return result;
    }
publicstaticintproductfinder(int…num){
int结果=1;
for(int i=0;i
是的,您可以,变量参数被视为数组。请参见,这样您就可以像普通数组一样迭代它们:

public static int productFinder(int... num)
{
    int product = 1;
    for(int i = 0; i < num.length; i++) {
        product *= num[i];
    }
    return product;
}
publicstaticintproductfinder(int…num)
{
int乘积=1;
for(int i=0;i
是的,您可以,变量参数被视为数组。请参见,这样您就可以像普通数组一样迭代它们:

public static int productFinder(int... num)
{
    int product = 1;
    for(int i = 0; i < num.length; i++) {
        product *= num[i];
    }
    return product;
}
publicstaticintproductfinder(int…num)
{
int乘积=1;
for(int i=0;i
我可能从result==1@Dirk谢谢你的救命恩人:哇。为什么我看不到这么简单的答案?非常感谢你!我喜欢这个简单。我可能会从result==1@Dirk谢谢你的救命恩人:哇。为什么我看不到这么简单的答案?非常感谢你!我喜欢这个简单。啊,这很有帮助!除了我会写“product*=num[I]”而不是“product*=num[1]”啊,这很有帮助!除了我会写“product*=num[I]”而不是“product*=num[1]”