• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:コンパイル時にエラーが出てしまいます・・・)

コンパイル時にエラーが出てしまいます

このQ&Aのポイント
  • コンパイル時にエラーが出てしまう原因として、間接参照ができないint型変数の使用が挙げられます。
  • btn1を押すとDBへ問合せし、データがあればbtn2が使えるようになり、データがなければbtn3が使えるようにしたい場合、int型変数t0が間接参照できずにエラーが出ています。
  • 解決策としては、int型変数t0を直接参照できるようにするか、別の方法で条件分岐を行う必要があります。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.3

いえいえ、rsはint型ではないのでメソッドを呼び出してもかまいません。そうではなく、 t0.hogehoge() のような箇所です。 が、恐らく、t0ではないint型の変数でエラーが出ているのではないでしょうか? つまり、ここに貼付けて頂いた部分ではないところでエラーが出ているのではないかと予想します。 エラーメッセージに行番号は出ていませんか? その辺りを重点的に探してみて下さい。

totojima
質問者

補足

お返事ありがとうございます。 エラーの桁表示があった訳ではないのですが、 int t0 = 0; の部分を削除してコンパイルしてみるとエラーが起きないのでやはりここが問題なのだと思います・・・ if(....) の中で定義した変数はその外へは持って出れないのでしょうか?

その他の回答 (2)

回答No.2

int n; n.hogehoge(); のような箇所です。int型の変数を利用してる部分を探してみて下さい。 int cannot be dereferenced は、int型にメソッドはありませんのでこういうことはできません、と言うエラーです。

totojima
質問者

補足

int t0 = 0; t0 = rs.getInt("年度");  の部分でしょうか・・・・ t0 = rs.getInt("年度"); の中でrs.getIntという文を使っているのがまずいのでしょうか?

回答No.1

このエラーは日本語訳がおかしくて、英語では「int cannot be dereferenced」です。 int型の変数に対してドットによる呼び出しをしてる箇所があるはずです。int型の変数を全て見直して下さい。

totojima
質問者

補足

お返事ありがとうございます。 >int型の変数に対してドットによる呼び出しをしてる箇所があるはずです。 ドットによる呼び出しとはどうのような形なのでしょうか。。。簡単なサンプルを載せてもらうとありがたいのですが。すいません。 int型ではなくString型でやってみても同じエラーが起きてしまったのですが、型を変えるだけではエラーをなくすことはできないでしょうか?

関連するQ&A