所以我试图将我的脚本作为一个编程难题来测试并测试它,我使用命令行以这种方式将 std 输入和输出指向文件:
java -jar dist\PairwiseAndSum.jar < in.txt > out.txt
这是代码:
Scanner sc = new Scanner(new InputStreamReader(System.in));
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
try {
int n = sc.nextInt();
short a[] = new short[n];
int sum = 0;
for (int i = 0; i < n; i++) {
a[i] = sc.nextShort();
}
for (int i = 0; i < n - 1; i++) {
for (int j = i + 1; j < n; j++) {
sum += a[i] & a[j];
}
}
bw.write(sum);
bw.flush();
bw.close();
} catch (IOException e) {
}
输入文件包含“5 1 2 3 4 5”,它被正确加载,但 out.txt 文件没有输出。现在如果我输入“System.out.println(sum);” 结果实际上会写在 out.txt 中。我在这里看到了类似的帖子,但没能理解这个问题:(。提前致谢。