• 締切済み

AllayListを使って3つの値取得につきまして

こんにちはJavaの初心者ですが、エクセルのような表計算を作っていますが、セルに行、列 その中身を保存しておくようなAllayListの使い方というのはないのでしょうか。 色々調べたのですが、2重はあるのですが、3つ、しかも今回は行がChar、列がINT、その中身の保存がStringという仕様になっていまして、セルの部分はJTABLEは使ってはならないということいことなのです。セルの部分はGridLayoutで提供されています。ですので、まずここにはいるすべてをどこかに全部保存して、そのご計算をさせるのですが、3つの値の保持、引き出しがわからずこまっています。 どなたか、なにとぞ宜しくご教授いただけませんでしょうか。

みんなの回答

  • LancerVII
  • ベストアンサー率51% (1060/2054)
回答No.1

こんにちは。 ArrayListですよね。 2重とか何のことだかはよくわかっていませんが(二次元配列のこと?)、行と列と値を保持するクラスを作ってそれをListなりMapなりで管理すれば良いのではないでしょうか。 public class Data { private char gyo; private int retsu; private String atai; public Data ( char gyo, int retsu, String atai ) { this.gyo = gyo; this.retsu = retsu; this.atai = atai; } public char getGyo() { return this.gyo; } public int getRetsu() { return this.retsu; } public String getAtai() { return this.atai; } } 必要なら各変数へのセッターを準備すると良いです。 リストに入れるなら List<Data>list = new ArrayList<Data>(); list.add ( new Data('A',1,"A1") );

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • セッションを使ったint型の値の保持

    こんにちは。 少し文が長いですがよろしくお願いします。 AccessのDBから取得したint型の値を、セッションを使って保持したいのですが while(rs.next()){ String name = rs.getString("NAME"); int value = rs.getInt("VALUE"); HttpSession session1 = req.getSession(true); HttpSession session2 = req.getSession(true); session1.setAttribute("Name", name); session2.setAttribute("Value", value); dispatcher2.include(req, res); } のコードの session2.setAttribute("Value", value); でコンパイルエラー DBAccess.java [37:1] javax.servlet.ServletRequest の setAttribute(java.lang.String,java.lang.Object) は (java.lang.String,int) に適用できません。 がでてうまくいきません。 セッションを使ってint型の値の保持を行うにはどうすればよいのでしょうか?

    • ベストアンサー
    • Java
  • 計算結果によって、セルの値を入れ替えるようなことができますか?

    =INT(RAND()*10)を Aの列 =INT(RAND()*10)を Bの列 に表示させて、Aのセル引くBのセルを計算して答えがマイナスになったときのみ、Aのセルの値とBのセルの値を入れ替える。 といったことがしたいのですが、どなたか教えてください。

  • JTableの表からデータ保存等について

    JTableを使って表計算出来るアプリを作りたいなと思ってますが 分からない事だらけで・・・ まずはリファレンスなるものに慣れるのが先決かも判りませんが。 やりたい事は ・セルを使って四則計算がしたい。 ・入力したデータを保存したい。 ネットで検索したりここの過去ログやを見るとどうやら XMLを使うのが手軽みたいですがセルに入力されたデータは どういう風に保存するのでしょうか? XML関連のページを見たりしてJavaでXML文書を操作 出来ると言うのは一応理解してますが、 その処理をどういう風にJTableを使って作れば良いのか 判らないんです。 稚拙な質問かもわかりませんがよろしくお願いします。

  • オペレータ定義について

    すみません、オペレータ定義について教えてください。 ■以下のようなクラスに、[] が定義されていて、 class String { public:       ・       ・ (メンバ関数がいくつかあり)       ・       // num 番目の文字を返す       char operator[](int num) const;       char& operator[](int num); private:       char* string; }; ■関数はこのように書かれていて、 char String::operator[](int num) const {     // 文字列の num 番目の文字を返す 1     return string[num]; } char& String::operator[](int num) {      // 文字列の num 番目の文字を返す 2      return string[num]; } ■これを →[] main() から使うにはどのようにしたらいいのでしょうか?

  • Jtableの特定のセルの背景色や文字色について

    Jtable内部の特定のセルの背景色や文字色、フォントの変更に関して質問があります。25行30列のJtableの20行20列目のセルの背景色だけ赤色にしたい場合、具体的にどの様にプログラミングすれば良いでしょうか? サンプルソースなどを教えてくださるとありがたいです! javaに関して詳しい方、ぜひともお力を貸してください!

    • ベストアンサー
    • Java
  • String文字列の解析の方法(初歩的ですみません

    皆様、はじめまして。sakiと申します。 javaを習い始めて2週間の初心者です。 今回はどうしてもわからな問題があり、質問することに致しました。 どうぞよろしくお願いします。以下、問題です。 String文字配列のaaa[SAKI]and[DOG]like[DOG=5]love[SAKI=-20]を左からj順に解析していく。 [ ]で囲まれていない文字列はString文字列として返す。 [ ]が現れた場合は、中身が"SAKI"の場合は、String型文字列"SAKI"を返す。 [ ]の中身が"DOG"の場合は、String型文字列"DOG"を返す。 また[ ]の中に=がある場合は=の後ろの数字をint型で返す。 という処理がわかりません。 for文とcharAt()メソッドで1文字ずつ抜き出し、それをchar型配列に格納し、さらにString型に変換して判別するという方法を考えたのですが上手くいきませんでした。 ご親切な方がいらっしゃいましたら、どうぞよろしくお願いいたします。

  • javaというか文字列について少し質問です><

    javaというか文字列について少し質問です>< javaというか文字列について少し質問です>< お願いします。 シーザー暗号で文字列をずらすためのクラスのメソッドをつくったのですが・・・ String decrypt(String str,int key) { StringBuffer sb = new StringBuffer(); // もしくはStringBuilder for(int i=0;i<str.length();i++){ char c=str.charAt(i); c=(char)((int)c-key); sb.append( c ); } こんな感じなのですがアルファベットの小文字26文字のみとしたいので暗号化や復号化の際に越えてしまう場合はアルファベット内でループさせたいのですがいまいちやり方が浮かびません><越えてしまう場合はzからひいたものを表現させれば良いかと思いやってみたのですが全然違う文字が出てきてしまいました。何かいい方法を教えてください。お願いします><

    • ベストアンサー
    • Java
  • JavaのObjectからintへの型変換について

    JavaのObject[][]からint[][]への型変換について、質問があります。 Jtableの表の中身を構成する要素【Object[][]】を取り出し、一部をint[][]として数字の条件と比較したいと考えております。 Object型の配列を簡単にintに変換できる方法は例えばどの様なものがあるのでしょうか? 教えていただけるとありがたいです。

    • ベストアンサー
    • Java
  • JavaでJTableの行の追加方法について

    今、Javaの勉強をEclopse3.2で勉強している者ですが、 JTableにてEnterを押したら次の行が追加されるという、 プログラムを作りたいのですが、どうしたら良いでしょうか? 自分はaddRow()を使ってみたのですが、うまく動きませんでした。 何が動かない原因なのかわかりません。 わかる人よろしくお願いします。 他のやり方も教えてください。 private JTable getJTable2() { int po =1; if (jTable == null) { model = new DefaultTableModel(po,2); jTable = new JTable(model); jTable.addKeyListener(new java.awt.event.KeyAdapter() { private int po; public void keyPressed(java.awt.event.KeyEvent e) { System.out.println("keyPressed()"); // TODO Auto-generated Event stub keyPressed() public addRow() String[] data = { "A5", "B5" }; jTable.addRow(data); System.out.println("po="+this.po); po += 1; System.out.println("po="+po); jTable.setValueAt("aikai",po,1); return; } });

    • ベストアンサー
    • Java
  • javaでの文字判定

    javaにおいて16進数文字判定はどのようにするのでしょうか? 例えばString文字列が16進数文字0-9,a-f,A-Fで構成されているかどうかを 判定するにはどのようにすれば良いのでしょうか? このString文字列の長さは事前には分からず、数文字かもしれないし 数百文字かもしれません c言語の場合だとchar配列xyz[]があって中身が"1234abc"の場合 isxdigit()を使ってループでisxdigit( xyz[i] )として1文字づつ判定しNUL文字が 出現すれば終了となるわけですがjavaの場合だとどうするのでしょう? Stringの場合、byte[]の場合、char[]の場合それぞれ教えてもらえると助かります。 よろしくお願いします。

    • ベストアンサー
    • Java