質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

ArrayList

Java用のタグです。arrayListはListインターフェースを実装した、リサイズ可能な配列用クラスです。

Q&A

解決済

2回答

4705閲覧

ArrayList型の<Quizz>の中身を表示させたいです。

退会済みユーザー

退会済みユーザー

総合スコア0

Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

ArrayList

Java用のタグです。arrayListはListインターフェースを実装した、リサイズ可能な配列用クラスです。

0グッド

0クリップ

投稿2017/06/06 05:41

編集2017/06/06 05:47

javaのプログラミングを勉強し始めてからまだ日が浅く拙い部分もありますが教えていただけると幸いです。
よろしくお願いいたします。

###前提・実現したいこと
NetBeansProjectでボタンを押した時にCSVファイルで読み込んだ画像の答えとそのファイルの名前が表示されるようにしたいです。
CSVファイルにbanana,banana.jpgのように書かれているので
答えがbananaの画像ファイル名はbanana.jpg
のように出力したいです。
###発生している問題・エラーメッセージ
private void jButton1ActionPerformedの中にある
Quizz a = quizzlist.getFileName(i);
Quizz b = quizzlist.getAnswer(i);
の部分でシンボルが見つけられませんと出てしまいます。

java

1import java.io.*; 2 3import java.util.ArrayList; 4 5import java.util.StringTokenizer; 6 7//CSVQuizzコンストラクタで下記をする 8//1,CSVファイル読み込み 9//2,読み込んだデータをもとに、Quizzインスタンス作成 10//3,QuizzインスタンスをArrayListに追加する 11 12public class CSVQuizz extends javax.swing.JFrame { 13 14 static ArrayList<Quizz> quizzlist = new ArrayList<Quizz>(); 15 static final String NL = System.getProperty("line.separator"); 16 17 18 19 public CSVQuizz() { 20 21 initComponents(); 22 23 try { 24 25 FileInputStream fis = new FileInputStream("quizzlist.csv"); 26 InputStreamReader isr = new InputStreamReader(fis, "UTF-8"); 27 BufferedReader bur = new BufferedReader(isr); 28 29 for (String line; (line = bur.readLine()) != null;) { 30 StringTokenizer st = new StringTokenizer(line, ","); 31 32 while (st.hasMoreTokens()) { 33 String str = st.nextToken(); 34 String x = st.nextToken(); 35 quizzlist.add(new Quizz(str, x)); 36 } 37 38 } 39 bur.close(); 40 isr.close(); 41 fis.close(); 42 } catch (IOException ex) { 43 System.out.println(ex.getMessage()); 44 } 45 46 } 47private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) { 48 for(int i=0; i< quizzlist.size(); i++){ 49 50 Quizz a = quizzlist.getFileName(i); 51 Quizz b = quizzlist.getAnswer(i); 52 a = quizzlist.get(i); 53 b = quizzlist.get(i); 54 taOutput.append("答えが["+a+"]の画像ファイルの名は["+b+"]"+NL); 55 56 } 57} 58

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

m.ts10806

2017/06/06 05:42

プログラムコードは```で囲ってください。(わからなければ質問編集画面でコード部分を選択し<code>ボタンを押してください)
退会済みユーザー

退会済みユーザー

2017/06/06 05:47

囲いました。大変失礼いたしました。
guest

回答2

0

Java

1 Quizz a = quizzlist.getFileName(i); 2 Quizz b = quizzlist.getAnswer(i); 3 a = quizzlist.get(i); 4 b = quizzlist.get(i);

ここをもう一度見直してみて下さい。

投稿2017/06/06 05:56

Clor

総合スコア883

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

ベストアンサー

前提:
1.quizzlistにはQuizzのインスタンスが格納されている
2.QuizzクラスのgetFileName()の戻り値はStringである
3.QuizzクラスのgetAnswer()の戻り値はStringである
4.QuizzクラスのgetFileName()、getAnswer()は引数をとらない
5.taOutput変数はappendを実装したインスタンスが格納されており引数としてString要素をとる

回答:
回答は前提項目を満たしている前提で書きます。

JAVA

1// quizzlistの要素分のループ処理 2for(int i=0; i< quizzlist.size(); i++){ 3 4// 当該ループ時のQuizz型を格納するための変数 5// あくまでもquizzlistはArrayListなので、Listインターフェイスに定義された 6// ArrayList上で実装されたgetメソッドを利用し、当該i番目の要素を取得 7Quizz quizz = quizzlist.get(i); 8 9// 当該i番目の quizz要素から ファイル名と回答を取得 10String fileName = quizz .getFileName(); 11String answer = quizz .getAnswer(); 12 13 14// 出力する先のtaOutputのappendメソッドに回答文字列を渡す 15taOutput.append("答えが["+answer +"]の画像ファイルの名は["+fileName +"]"+NL); 16 17}

以上。

投稿2017/06/06 05:52

編集2017/06/06 05:53
kanimaru

総合スコア1013

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

退会済みユーザー

退会済みユーザー

2017/06/06 05:59

大変わかりやすい回答ありがとうございました。 エラーもなくなり出力結果も正しいものが表示されました。 本当にありがとうございました。
kanimaru

2017/06/06 06:02

rimi.1220さん 動作したようでよかったです。ただ、動作したのはなぜなのか、自分は何を理解していなかったために動作に至らなかったのか。それを改めて復讐するようにすると次につながると思います。 がんばってください。
退会済みユーザー

退会済みユーザー

2017/06/06 06:09

しっかりと考えていきたいと思います。 ありがとうございました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問