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

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

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

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

Q&A

解決済

1回答

600閲覧

Javaで取得した情報を違うListに入れたいです。

iisaniisan

総合スコア75

Java

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

0グッド

2クリップ

投稿2022/08/15 09:22

編集2022/08/16 00:59

Javaで下記のようなソースを書いています。
下記For文infodata.hyojiFlgの結果(true false)をm_FirstData.getTorokuListへ入れたいのですが、何か方法はありますか?

Java

1public ResultData getList(final ResultData requestData){ 2 3 List<KanriData> subPullList = new ArrayList<KanriData>(); 4 5 SqlMapClient sqlMapClient = getSqlMapClient(); 6 7 String firstDate = requestData.getParameter("firstDate"); 8 firstDate = CalenderPage.getDate(CalenderPage.DATE_YYMMDD); 9 10 List<TorokuData> TorokuList = new ArrayList<TorokuData>(); 11 try{ 12 TorokuList = SubPage.getSubList(sqlMapClient, firstDate, subPullList); 13 for(TorokuData infodata : m_FirstData.getTorokuList()){ 14 infodata.setHyojiFlg(false); 15 for(TorokuData naiyoData : TorokuList){ 16 if(naiyoData.value().equals(infodata.getValue())){ 17 infodata.setHyojiFlg(true); 18 } 19 } 20 } 21 m_FirstData.getTorokuList = new ArrayList<TorokuData>(); 22 m_FirstData.getTorokuList = TorokuList; 23 } catch (Exception e) { 24 throw new RuntimeException(e); 25 }

TorokuData.java

1Public class TorokuData extends SyosaiData { 2 private static final long serialVersionUID = 11111111111111111L; 3 4 private boolean m_HyojiFlg; 5 6 public boolean isHyojiFlg(){ 7 return m_HyojiFlg; 8 } 9 10 public void setHyojiFlg(boolean hyojiFlg){ 11 this.m_HyojiFlg = hyojiFlg; 12 }

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

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

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

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

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

swordone

2022/08/15 09:32

コードを見る限り、ggListはList<aaData>型のようですが、 > ffData.hyojiFlgの結果(true false)をggListへ入れたい とはどういうことですか?
jimbe

2022/08/15 10:01 編集

サンプル的とは言え a だ b だと全く意味の無い変数名をクラス名に関係するとかそれなりに意味のあるものにするとか、クラス名は最初の文字を大文字にする命名規則を使うとかしないと、たった 10 数行のコードなのに凄い読み難いです。 > List(aaData) 記号間違っているようです。 > ggList() 変数と同じ名前のメソッド? それとも変数の間違いでしょうか. > hhData.value().equals(ffData.getValue)) hhData も ffData も aaData 型ですが、 value がメソッドで getValue がフィールドなのでしょうか。
dodox86

2022/08/15 09:58

元のコードがあって、質問投稿用に書き直したのでしょうかね。それにしてもコンパイルエラーを匂わせるような部分が多いし、第三者にはコードの意図の理解含めて、検討は不可能な気がします。
m.ts10806

2022/08/15 09:59

サンプル過ぎるとやりたいことの本質が見えませんし、 せめてコピペで動く程度にはコード整理してもらいたいです(独自に定義したクラスがあるならそのクラス定義も)
Crimson_Tide

2022/08/15 15:51

『infodata.hyojiFlgの結果(true false)をm_NewListに入れたい』というのは、 m_NewList = TorokuList;とした上で m_NewListの各TorokuDataオブジェクトのm_HyojiFlgメンバ変数に判定結果を反映させたい、 ということで合っていますか? 違うのであればm_NewListをどのようなデータにしたいのか、どのように利用したいのか追記してください。 この場合、TorokuListとm_NewList内の各オブジェクトは同一で、 TorokuListの各オブジェクトのm_HyojiFlg変数変えるのと、m_NewListの各オブジェクトのm_HyojiFlg変数を変えるのは同じ行為、という認識はありますか? 上記を前提として infodata.hyojiFlgの結果(true false)を入れたいとのことですが、関連性が不明なので どのinfodata.setHyojiFlgの結果を、m_NewListのどのオブジェクトのm_HyojiFlgメンバ変数に反映させたらいいのかわかりません。 そのため、判定結果は以下ということで合っていますか? 『二重for文処理中でnaiyoData.value().equals(infodata.getValue())が一回でもtrueになればその時のnaiyoDataのm_HyojiFlgメンバ変数をtrue、一度もtureにならなければfalseにする。』
guest

回答1

0

自己解決

tryの中身の記述の順番を入れ替えたら上手くいきました。

Java

1public ResultData getList(final ResultData requestData){ 2 3 List<KanriData> subPullList = new ArrayList<KanriData>(); 4 5 SqlMapClient sqlMapClient = getSqlMapClient(); 6 7 String firstDate = requestData.getParameter("firstDate"); 8 firstDate = CalenderPage.getDate(CalenderPage.DATE_YYMMDD); 9 10 List<TorokuData> TorokuList = new ArrayList<TorokuData>(); 11 try{ 12 TorokuList = SubPage.getSubList(sqlMapClient, firstDate, subPullList); 13 m_FirstData.getTorokuList = new ArrayList<TorokuData>(); 14 m_FirstData.getTorokuList = TorokuList; 15 16 for(TorokuData infodata : m_FirstData.getTorokuList()){ 17 infodata.setHyojiFlg(false); 18 for(TorokuData naiyoData : TorokuList){ 19 if(naiyoData.value().equals(infodata.getValue())){ 20 infodata.setHyojiFlg(true); 21 } 22 } 23 } 24 } catch (Exception e) { 25 throw new RuntimeException(e); 26 }

投稿2022/08/16 00:58

iisaniisan

総合スコア75

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.47%

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

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

質問する

関連した質問