如何在 int 数组 (java) 中追加 int?

How do I append int in a int array(java)?

我正在研究 codingbat 的一种编码实践,它是

array coding practice

第一个没问题,

public int[] maxEnd3(int[] nums) {
  int max = Math.max(nums[0], nums[2]);
  int[] result = {max, max, max};
  return result;
}

然而,第二个有编译问题,我不知道为什么。请看看我的代码。谢谢!

public int[] maxEnd3(int[] nums) {  
   int first = nums[0];
   int last = nums[2];
   int[] result = new int[2];
   if (first >= last) {
      result = {first, first, first};
   } else {
      result = {last, last, last};
   }
   return result;
}

编译问题: 缺少“}”或表达式的非法开头

int[] result = {max, max, max};

上面的编译是因为编译知道类型

return {first, first, first};

以上无法编译,因为编译器不知道类型。

应该是:

return new int[] {first, first, first};

或者,如果你想把它赋给一个变量,你仍然需要使用:

result = new[int] {first, first, first};