我今天刚刚安装了NetBeans 12.6,我在下面粘贴的代码中遇到了System.out.print((问题。由于某些原因,removeValue中的print((直到main中For循环中的println((才打印。当我在BlueJ中运行此代码时,一切都很好。我的NetBeans有什么问题吗??
期望的输出看起来像:
输入索引:2
1
3
相反,它看起来像:
2
输入索引:1
3
package e.mavenproject1;
import java.util.Scanner;
public class NewClass {
static Scanner input = new Scanner(System.in);
public static void main(String[]args) {
int[] array = {1, 2, 3};
array = removeValue(array);
for (int i = 0; i < array.length; i++) {
System.out.println(array[i]);
}
}
public static int[] removeValue(int[] array) {
System.out.print("Enter index: ");
int index = input.nextInt() - 1;
int[] copy = new int[array.length - 1];
for (int i = 0, j = 0; i < array.length; i++) {
if (i != index) {
copy[j++] = array[i];
}
}
return copy;
}
}
print((在不刷新的情况下将字符串添加到PrintStream中。如果你想刷新它,你需要在它之后添加flush((命令。println((会自动刷新它,所以这也会起作用。此外,需要明确的是,这不是一个bug。