したがって、スクリプトをプログラミングパズルとしてテストし、テストするために、コマンドラインを使用して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 に書き込まれます。SO で似たような投稿を見ましたが、問題を理解できませんでした:(。よろしくお願いします。