次のコードをコンパイルしようとしています。
package week1;
public class ThreeSum {
public static int count(int[] a) {
// count triples that sum to 0
int count = 0;
for (int i = 0; i<a.length; i++) {
for (int j = i+1; j < a.length; j++) {
for (int k = j+1; k < a.length; k++) {
if (a[i] + a[j] + a[k] == 0) {
count++;
}
}
}
}
return count;
}
public static void main(String[] args) {
int[] a = In.readInts(args[0]);
StdOut.println(count(a));
}
}
このコードは、week1 フォルダーの ThreeSum.java ファイルにあります。「In」と「StdOut」の両方のクラスは、./lib
フォルダーにあるパッケージ stdlib.jar にあります。私は常に IDE を使用してきましたが、コマンド ラインを使用することにしました。だから私の
javac -cp .:lib/stdlib.jar week1/ThreeSum.java
およびクラスパスパラメータの他のバリアントでは、エラーが返されます:
week1\ThreeSum.java:20: error: cannot find symbol
int[] a = In.readInts(args[0]);
^
symbol: variable In
location: class ThreeSum
week1\ThreeSum.java:21: error: cannot find symbol
StdOut.println(count(a));
^
symbol: variable StdOut
location: class ThreeSum
私の場合、適切な -cp オプションはどのように見えるべきですか?