私はJavaを初めて使い、Javaで複素数を扱う方法がわかりません。私は自分のプロジェクトのコードを書いています。 exp(i * 2 * pi * f)を見つけるために、オイラーのアイデンティティexp(i theeta)= cos(theeta)+ i Sin(theeta)を使用しました。私はこの結果の複素数に配列 "d"からの別の数を掛けなければなりません。ここで私はJavaで複素数を扱うには?
Complex Data[][] = new Complex[20][20];
for (int j = 0; j < d.size(); j++){
for (int k = 0; k<20; k++){
for (int l = 0; l<20; l++){
double re = Math.cos(2 * Math.PI * f);
double im = Math.sin(2 * Math.PI * f);
Complex p = new Complex(re, im);
Data[k][l] = ((d.get(j) * p.getReal()), (d.get(j) * p.getImaginary()));
}
}
}
をやっていることであるしかし私は、「代入の左辺は変数でなければなりません」と言っ表現Data[k][l] = ((d.get(j) * p.getReal()), (d.get(j) * p.getImaginary()));
上のエラーを取得し、しています。 この問題を解決するのを手伝ってください。おかげで
のように、演算子の代わりに使用することができるかもしれないいくつかの方法があるかもしれませんk] [l] 'と書くと、一般的に' Data [k] [l] = new Complex(...) 'の形式のものが必要になります。あなたが現在持っているのは、コンマで区切られた2つの値を変数に代入しようとしているようです。 – khelwood
khelwoodさんにお返事ありがとうございます。私はそれを修正しました。 – user01