java中的空整数数组

java中的空整数数组,java,arrays,Java,Arrays,编写一个函数,该函数接受一个数组作为输入,并返回一个由2个数字组成的数组。返回的数组包含来自输入的偶数和奇数之和 如果任何输入为null,则应将其视为空数组 例子: 输入: [30,18,2,83,20,71] 输出: [70154] 输入: [14,11,10,67,41] 输出: [24119] 输入: [36, 24, -82, 29, 44, -3, -100, -5, 49] 输出: [-78,70] 我写的函数是 public int[] getSumOfEvensAndOdds(i

编写一个函数,该函数接受一个数组作为输入,并返回一个由2个数字组成的数组。返回的数组包含来自输入的偶数和奇数之和

如果任何输入为null,则应将其视为空数组

例子: 输入:
[30,18,2,83,20,71]
输出:
[70154]

输入:
[14,11,10,67,41]
输出:
[24119]

输入: [36, 24, -82, 29, 44, -3, -100, -5, 49] 输出: [-78,70]

我写的函数是

public int[] getSumOfEvensAndOdds(int[] input) {
        
        int x[] = input;
        int even = 0, odd = 0;
        for (int i = 0; i < x.length; i++) {
            if (x[i] % 2 == 0)
                even += x[i];
            else
                odd += x[i];
        }
        int[] ans={even, odd};
        return ans;
    }
public int[]GetSumofEvents和赔率(int[]输入){
int x[]=输入;
int偶数=0,奇数=0;
对于(int i=0;i

但是我应该如何合并空数组的一部分呢?

首先检查
input
是否为
null
。如果是,请改为使用空数组:

int x[] = input == null ? new int[0] : input;

首先检查
input
是否为
null
。如果是,请改为使用空数组:

int x[] = input == null ? new int[0] : input;

您的问题只是关于数组是否为空。快速搜索让我明白了这一点:

您的问题只是关于数组是否为空。快速搜索得到了以下信息:

public int[]GetSumofEvents和赔率(int[]输入){
int x[]=输入;
int偶数=0,奇数=0;
对于(int i=0;i
public int[]getsumofeven和赔率(int[]input){
int x[]=输入;
int偶数=0,奇数=0;
对于(int i=0;i
如果任何输入为null,则应将其视为空数组

为什么不直接检查
null

public int[] getSumOfEvensAndOdds(int[] input) {
    int even = 0, odd = 0;
    if(null != input){
        for (int i: input) {
            if (0 == i % 2){
                even += i;
            } else{
                odd += i;
            }
        }
    }
    return new int[]{even, odd};
}
如果任何输入为null,则应将其视为空数组

为什么不直接检查
null

public int[] getSumOfEvensAndOdds(int[] input) {
    int even = 0, odd = 0;
    if(null != input){
        for (int i: input) {
            if (0 == i % 2){
                even += i;
            } else{
                odd += i;
            }
        }
    }
    return new int[]{even, odd};
}

你需要这样的东西:

public class Test {

public static int[] getSumOfEvensAndOdds(int[] input) {
    int[]   def = {0,0};

    if (input != null && input.length!=0) {
        int x[] = input;
        int even = 0, odd = 0;
        for (int i = 0; i < x.length; i++) {
            if (x[i] % 2 == 0)
                even += x[i];
            else
                odd += x[i];
        }
        int[] ans = {even, odd};
        return ans;
    }

    return def;
}

public static void main(String [ ] args){
    int[]   ar = {10,20,30,40,50,60,71,80,90,91};
    int[]   res;

    res = getSumOfEvensAndOdds(ar);
    System.out.println("Result: " + res[0] + " " + res[1]);

    int[]   ar2 = {};
    res = getSumOfEvensAndOdds(ar2);
    System.out.println("Result: " + res[0] + " " + res[1]);

    int[]   ar3 = null;
    res = getSumOfEvensAndOdds(ar3);
    System.out.println("Result: " + res[0] + " " + res[1]);
}
公共类测试{
公共静态int[]GetSumofEvents和赔率(int[]输入){
int[]def={0,0};
if(input!=null&&input.length!=0){
int x[]=输入;
int偶数=0,奇数=0;
对于(int i=0;i
}


我使用input!=null检查数组是否为null,使用input.length!=0检查数组大小是否为0。此外,在main方法中,我给出了三个示例。

您需要这样的内容:

public class Test {

public static int[] getSumOfEvensAndOdds(int[] input) {
    int[]   def = {0,0};

    if (input != null && input.length!=0) {
        int x[] = input;
        int even = 0, odd = 0;
        for (int i = 0; i < x.length; i++) {
            if (x[i] % 2 == 0)
                even += x[i];
            else
                odd += x[i];
        }
        int[] ans = {even, odd};
        return ans;
    }

    return def;
}

public static void main(String [ ] args){
    int[]   ar = {10,20,30,40,50,60,71,80,90,91};
    int[]   res;

    res = getSumOfEvensAndOdds(ar);
    System.out.println("Result: " + res[0] + " " + res[1]);

    int[]   ar2 = {};
    res = getSumOfEvensAndOdds(ar2);
    System.out.println("Result: " + res[0] + " " + res[1]);

    int[]   ar3 = null;
    res = getSumOfEvensAndOdds(ar3);
    System.out.println("Result: " + res[0] + " " + res[1]);
}
公共类测试{
公共静态int[]GetSumofEvents和赔率(int[]输入){
int[]def={0,0};
if(input!=null&&input.length!=0){
int x[]=输入;
int偶数=0,奇数=0;
对于(int i=0;i
}


我使用input!=null来检查数组是否为null,并使用input.length!=0来检查其大小是否为0。另外,在main方法中,我给出了三个示例。

空数组可能是这样返回的
返回新的int[]{}
空数组可能是这样返回的
返回新的int[]{}
这是什么意思“我应该如何合并空数组的一部分”?空数组的结果是什么?你可以总结多少个元素?最简单的:
if(input==null)返回新的int[2];
更好一些,只需对
执行
if(input!=null)
(注意:为什么需要
x
)你的意思是什么?”我应该如何合并空数组的一部分“?空数组的结果是什么?您可以总结多少个元素?最简单的:
if(input==null)返回新的int[2];
更好,只需对
执行
if(input!=null)
(注意:为什么需要
x
)我不确定。我认为结果总是有两个元素:偶数元素和奇数元素之和。@LuCio会的。
x
只是求和功能的输入。好吧……我明白了……这不是结果。我不确定。我认为结果总是有两个元素:su