☆★Java質問・相談スレッド177★★at TECH
☆★Java質問・相談スレッド177★★ - 暇つぶし2ch894:デフォルトの名無しさん
16/06/12 22:29:32.84 Vqz0UhNC.net
アメリカ人なら スィープラスプラスアウゥ って言うだろうな

895:デフォルトの名無しさん
16/06/12 22:35:38.40 4cZJjeON.net
シー!
ぷらぷら
アーッ!

896:デフォルトの名無しさん
16/06/13 11:46:01.74 L+tKyIDw.net
jarファイルの中にある sample.libs.hoge.classのメソッドを5つ、メンバ変数を2つ追加(メンバ変数一つに対し、set/get + HogeA )
したHogeAを作りたいのですが

//修正前
import sample.libs.hoge;
Hoge hoge = new Hoge(); // => 設定関係が勝手にセットされrun()が自動的に実行される


//修正後
import sample.libs.hogeA; // => hogeを拡張したhogeEX的な存在
HogeA hogea = new HogeA();
Hogea.setURL("URLリンク(www.sample.com.));
Hogea.setTimeout(5);
Hogea.run();

こんな感じにしたいのですが 可能ですかね・・・

897:デフォルトの名無しさん
16/06/13 12:20:38.11 A1KXN1Y2.net
HogeAがThreadクラスをextendsしてればできるんじゃね?
hogea.start()だけどな

898:デフォルトの名無しさん
16/06/13 12:22:56.04 A1KXN1Y2.net
ああ、インターネットにアクセスするだけならThreadいらないわな

899:デフォルトの名無しさん
16/06/13 12:25:18.40 A1KXN1Y2.net
度々御免。
インターネットアクセス中に処理が戻ってきてほしいならThread
処理が止まってもいいならThreadいらないな

900:デフォルトの名無しさん
16/06/13 13:00:32.24 Mj2HqjrQ.net
>>892
アクセスレベルが判明しない以上はわからない、publicとかprivateとか
URLリンク(docs.oracle.com)

901:デフォルトの名無しさん
16/06/13 15:56:32.25 h4KLgWKn.net
>>892
よく言いたいことがわからないけど、継承させればいいんじゃね?
finalが付いていなけりゃだけど

継承できないならリフレクションすればいいし

902:デフォルトの名無しさん
16/06/13 19:15:55.13 qjbwxnFC.net
すいませんあのー
入門書にある多態性のざっくり捉えることのメリットについての説明がよくわからないんですが
何か簡単なプログラム例を出して教えていただけないですか?

903:デフォルトの名無しさん
16/06/13 19:19:12.08 Q+rj


904:Y21+.net



905:デフォルトの名無しさん
16/06/13 19:38:55.88 NNE4K5OW.net
変態でぐぐれ

906:デフォルトの名無しさん
16/06/13 19:43:22.61 h4KLgWKn.net
俺の画像がトップに来たわ

907:デフォルトの名無しさん
16/06/13 20:10:35.38 L+tKyIDw.net
悩んでて聞いたのは良いけど自分のレベルが足りなすぎて何を言われてるのかわからない・・・ゴメン・・・
thread・・・リフレクション なんかリフレクションって全て弾き返しそう ちょっと強そう Hogeはほぼ全てprivateで書かれてます Hogeにはfinalはありません。

イメージ伝わるかな・・・
/* HogeA.java*/(今回作るプログラム ~/${project_name}/lib/HogeA.javaに格納)
import sample.lib.Hoge; //(sample_lib_001.jarの中に格納されてる)
class HogeA extends Hoge{
public void HogeA(){}// 呼びだされた時は特に何もしない
public void setURL(string _url){ //プライベートの所に値入れる// Hoge::url => private String
url = _url;
}
public void setTimeout(int _time){ //プライベートの所に値入れる// Hoge::time は存在しないのでHogeA::time(0-?)をprivateで作りたい
time = if(_time<60)?time:60:;
}
//↓困ってる所-1- 1,2行更新するために全部コピペしないとダメ?
public boolean _run(){ /* Hoge()が呼び出されていた時に実行されていた処理を全て行う。更新/追加されたメンバー変数(time/url)を使用。*/; return true; }
private int time=60; // private メンバ変数 timeの追加(HogeA::setTimeout/HogeA::getTimeout(省略)にて使用)
}

/* main.java */
import override.sample_lib_001.lib.HogeA; //←困ってる所2 今回作ったHogeAをこんな感じで呼びたい
import Logger;
class main{
public Logger log = new Logger("/dir/aaa.log");
public void main(){boolean flag=false;HogeA hogea = new HogeA();hogea.setURL("URLリンク(www.sample.com.));flag = hogea._run();log.info("run : "+if(flag === true)?"success":"failed"); }//
}

908:デフォルトの名無しさん
16/06/13 20:14:38.66 qjbwxnFC.net
>>899
はい。java多態性入門で検索しました。
ただ入門ぽい入門者に対して説明されてるとこが見つかりませんでした。

909:デフォルトの名無しさん
16/06/13 20:58:17.73 0tlfaplt.net
>>902
全部コピー?継承さらてわじゃないの?

てか、コンパイルした結果はどうなの?エラー出たの?そらともコンパイルできたけど意図した通りに動かないの?

910:デフォルトの名無しさん
16/06/13 20:59:23.62 0tlfaplt.net
あ。タイプミスった。スマホのフリック入力でミスると変なタイプミスになるな。w

911:デフォルトの名無しさん
16/06/13 21:02:23.29 zP9qG/5E.net
>>898

デザインパターンとか調べると分かるかも

912:デフォルトの名無しさん
16/06/13 21:11:00.63 zP9qG/5E.net
>>898
追記
ストラテジーパターンが、わかりやすいかも

2つのクラスで共通するメソッドを使えるので、重複するコードを減らせる

913:デフォルトの名無しさん
16/06/13 21:12:19.48 L+tKyIDw.net
>>904
やりたいことが多すぎてごっちゃになっててたのに今気がついた。
import の所がそもそも動いてなくてテストができてない・・・

全部っていうのはメソッドの中の処理全部・・・
hoge()//元のメソッド
{
↓コピペ1
......
.....
..
..
↑ここまで
修正したい場所1←
修正したい場所2←
↓コピペ2
..
....
.....略
↑コピペ2
}
↑こんな感じで修正したいヶ所はたった2ヶ所だけなんだけど

hogeA()//Hoge継承?してきて2行修正しただけのhogeAメソッド
{
コピペ1
修正ヶ所1
修正ヶ所2
コピペ2
}
全部コピペしないとだめかな。ここのコピペ部分どうにか省略出来・・・る訳無いか・・・

914:デフォルトの名無しさん
16/06/13 21:15:34.40


915:qjbwxnFC.net



916:デフォルトの名無しさん
16/06/13 21:33:43.26 0tlfaplt.net
>>908
詳細わからねえからなんとも言えんが、多分できない。

917:デフォルトの名無しさん
16/06/15 02:33:32.00 gHR2VZA2.net
>>902
なんかHogeとHogeAの関係性が逆なんじゃないの

class HogeA {
private String url;
private int time;
public void HogeA(){};
public void setURL(String url) { this.url = url; }
public void setTime(int time) { this.time = time; }
public void run() {…}
}

class Hoge extends HogeA {
public Hoge() {
setURL(“XXX”);
setTime(0);
run();
}
}

HogeとHogeAを用意する意図が分からないので疑問を挟まず要件を満たすならこんな感じ

918:デフォルトの名無しさん
16/06/15 11:26:32.12 RLysB/OD.net
java初心者なんだけどいい?
コマンドラインから1~6打ち込んでその数字を乱数で比較して勝ち負けを判定するものつくりたいんだけど
C++みたいに1~6で数字の入力を制限することができないんだけどソースどーやって書くの

919:デフォルトの名無しさん
16/06/15 11:29:51.22 yd8lnPA+.net
外国の方ですか?

920:デフォルトの名無しさん
16/06/15 11:46:43.75 RLysB/OD.net
>>913
外人ぽい日本人が聞いてる

921:デフォルトの名無しさん
16/06/15 11:48:50.82 6xgxkumJ.net
なぜコマンドラインなのかButtonで入力しては駄目なのか単体テストで済む話じゃないのか

922:デフォルトの名無しさん
16/06/15 11:55:57.41 3GkgPPDP.net
>>910 (´・ω・`)残念
>>911 jarファイル(Hoge含む)は私が作ったものではなく、更に毎月更新される。
なので直接修正せず何らかの手段でその部分だけ修正できないかなと 試行錯誤してます(´・ω・`)

923:デフォルトの名無しさん
16/06/15 12:06:18.74 7bfVMXbn.net
設計センス皆無な奴が作ったウンコシステムを使う人は大変だなあw

924:デフォルトの名無しさん
16/06/15 12:08:44.12 7bfVMXbn.net
>>914
あだ名はミャンマーとかですか?

冗談はさておき、C++での入力制限はどのようなコードを書いたんだ?
外国の方だと思われたのは日本語が意味不明だからだ
コードで話そうではないか

925:デフォルトの名無しさん
16/06/15 12:28:32.12 i4R0HEqY.net
それはヘイトスピーチではないのか。

926:デフォルトの名無しさん
16/06/15 12:39:43.70 1MMqiU3V.net
そういやC++でどうやって入力制限してるんだ?標準入力からただ入力したら普通できないよな。入力後に調べて弾くならできるが、それならJava でもできる。

927:デフォルトの名無しさん
16/06/15 14:02:33.32 TGiPX2zL.net
>>912
キーボード入力は、
java.util.Scanner(System.in).nextLine()

>>916
Groovyのメタプログラミングでは、

Category, MOP(Meta Object Protocol), MetaClass, Expando,
AST(Abstract Syntax Tree)変換とか?

928:デフォルトの名無しさん
16/06/15 22:16:22.75 gfdIm+Z1.net
import java.util.Random;
import java.util.Scanner;

public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
Random rnd = new Random();

System.out.println("ようこそ占いの館へ");
System.out.println("あなたの名前を入力してください");
String name = sc.nextLine();
System.out.println("あなたの年齢を入力してください");
String ageString = sc.nextLine();
int age = Integer.parseInt(ageString);
int fortune = rnd.nextInt(4);
fortune++;
System.out.println("占いの結果が出ました!");
System.out.println(age + "歳の" + name + "さん、あなたの運気番号は" + fortune + "です");
System.out.println("1:大吉 2:中吉 3:吉 4:凶");

sc.close();
}
}
【質問】
Scannerオブジェクトは.close()しないとリークするのに、Randomオブジェクトは
リークしないのですか?.close()できないのですか?
Java歴2日目です。

929:デフォルトの名無しさん
16/06/15 22:30:41.51 /d5kHJwB.net
net beansを使ってjavaでweb作成をしています。
サーバーはtomcatです。
データベースアクセスをして、何レコードか抽出される結果を
画面に表示したいのですが、やはり繰り返し処理を行い、
抽出結果の分だけテーブルに追加していくしか方法はないでしょうか。
レコードを配列化し画面と関係づけることで、画面に表として
表示させるような効率的なやり方はないものでしょうか。

930:デフォルトの名無しさん
16/06/15 22:40:32.12 Zx+tyMGv.net
jspの使い方でも覚えろよ

931:デフォルトの名無しさん
16/06/15 23:00:03.59 Qb3yFOnx.net
>>923
そもそも何を言っているのか分からない。

932:デフォルトの名無しさん
16/06/15 23:20:20.27 018mCAnd.net
>>923
フレームワークを学ぼう。

933:デフォルトの名無しさん
16/06/15 23:28:47.56 D1dVQYB8.net
>>923
HPのサンプルを動かすか、本読んで出直して来い

934:デフォルトの名無しさん
16/06/16 07:33:12.28 tOwQ8tvq.net
スッキリわかるサーブレット&JSP入門

推薦本

935:デフォルトの名無しさん
16/06/16 07:44:32.90 Wdxtt7hg.net
>>923です。
すみません、言葉足らずでした。
回答ありがとうございます。

JSPでやろうとしています。
JSPでjavaで取得した結果を抽出することはでききますが、
それを表のように枠線がついた形式で表示させるには、
やはり1レコードずつ<tr></tr>タグで囲って
動的に出力するしかないでしょうか。

struts等のフレームワークも確認してみましたが、
必要最低限以外のインストールはしたくなく
(他の人も保守するかもしれないので)、
一般的なやり方でDBからの抽出結果を簡単に表形式で
表示する方法はないかと思い、
質問させていただきました。

936:デフォルトの名無しさん
16/06/16 09:18:00.34 LOakJq83.net
アホ?

937:デフォルトの名無しさん
16/06/16 09:21:08.29 dX5NIqBg.net
紛れもないな

938:デフォルトの名無しさん
16/06/16 10:04:40.92 tOwQ8tvq.net
そんなの一々、自分でしないよ。

フレームワークが勝手にやってくれる

939:デフォルトの名無しさん
16/06/16 10:32:33.07 3KkN92+a.net
>>929
jspでやろうとしてるかどうかは聞いてねえ
「jspの使い方を覚えろ」と言ったんだ

この言葉だけまずは理解しろ
分かったら帰れ

940:デフォルトの名無しさん
16/06/16 10:41:28.70 FCR2MGZl.net
人に理解してもらうには言葉足らずだということだね

941:デフォルトの名無しさん
16/06/16 10:55:13.18 4n71OsAj.net
>>934
マシンとしか向き合えないコミュ障だから
プログラマーやってるんでしょ。
察してあげなよ。

942:デフォルトの名無しさん
16/06/16 11:30:59.53 G8mFGz+4.net
マシンの方が女より扱いやすい

943:デフォルトの名無しさん
16/06/16 12:31:08.78 CbGXrP8u.net
>>922
乱数って計算してるだけだからな・・・

944:デフォルトの名無しさん
16/06/16 13:13:28.57 v9L+DCnp.net
RANDOM関数はBASICの時代ではRANDOM(-TIME)という使い方が多い
(BASICのRANDOM関数は引数が負数だった場合それぞれの数値に固有の値を返す)

945:デフォルトの名無しさん
16/06/16 13:34:49.95 jO0P8oj4.net
seedを考えないのであればMath.random()の方が単純だな
擬似乱数で困る場合は乱数発生器を買ってくるとか、結構いい値段する

946:デフォルトの名無しさん
16/06/16 14:01:04.04 tOwQ8tvq.net
>>922
オブジェクト.close()など、終了処理するのは、
外部リソースを握りこんでいるようなオブジェクトで、リソースを解放するため

普通の単純なオブジェクトは、.close()など特別な終了処理をしなくても、
生存するスコープから外れると、自然消滅する

947:デフォルトの名無しさん
16/06/16 15:33:51.49 bI+aCDek.net
javaでクライアントサイドのブラウザ制御っていうのはあまりやらないんですか?
アプレットっていうのは今使われないと聞いて
サーバサイドのjavaからクライアントに何か複雑な事させたい時はjsとかhtml5?とかのスクリプトをコールする感じですか?

948:デフォルトの名無しさん
16/06/16 15:36:15.40 7yZ+E296.net
ブラウザでjava動かないからな。やるやらないじゃなくて動かない。
gwtとか使えばjavaからjsにコンバートして動かすことはできる

949:デフォルトの名無しさん
16/06/16 15:44:22.50 bI+aCDek.net
>>942
そういう技術もあるんですね
有り難うございます

950:デフォルトの名無しさん
16/06/16 18:58:53.05 Os9UABDT.net
RuntimeException(を継承したクラス)をthrowするときって
javadocの@throwsは書くとして
メソッド名うしろのthrowsには書くもの?書かないもの?

951:デフォルトの名無しさん
16/06/16 19:54:25.75 bUrMWU8W.net
とんちかな?

952:デフォルトの名無しさん
16/06/16 19:55:10.72 bUrMWU8W.net
javadocがなにかわかってないだろ

953:922
16/06/16 20:03:38.56 eFMzQDZe.net
ご回答ありがとうございます。両者の違いを理解しました。

954:デフォルトの名無しさん
16/06/16 20:12:03.39 q/qD4Mvc.net
>>944
検査例外

955:デフォルトの名無しさん
16/06/16 20:29:14.03 bUrMWU8W.net
ツールが便利になった反面、変な勘違いをしてる人多くない?

956:デフォルトの名無しさん
16/06/16 21:38:18.50 eFMzQDZe.net
九九を出力するコードを書きました。
欠点がありましたらご指摘ください。
Java歴3日の者です。

public class Main {
public static void main(String[] args) {
for(int y = 1; y < 10; y++) {
for(int x = 1; x < 10; x++) {
int ans = y * x;
String str = "" + ans;
if(ans < 10) {
str = " " + str;
}
if(x != 9) {
str += " ";
}
System.out.print(str);
}
System.out.print("\n");
}
}
}

957:デフォルトの名無しさん
16/06/16 22:25:10.82 1TqtMSCm.net
>>950
プラス演算子での文字列の連結はだめ!!

958:デフォルトの名無しさん
16/06/16 22:30:47.48 1TqtMSCm.net
あと個人てきに数値から文字列にするときに空文字と連結させて文字列にするのきらい!!

959:デフォルトの名無しさん
16/06/16 22:33:35.61 eFMzQDZe.net
>>951 >>952
ありがとうございます。ほかのもっといい方法があるのですね。
調べてみます。

960:デフォルトの名無しさん
16/06/16 22:35:10.40 g+b64nNx.net
>>951
この規模でも+連結しちゃだめなの?

961:デフォルトの名無しさん
16/06/16 22:53:20.80 mb8wywpH.net
いや>>950の場合はむしろ+でいいよ
実質はごく短い文字列をせいぜい2回連結してるだけ(最初のは最適化される)だから、
数値→文字列の変換やprintlnのコストに比べたら誤差にもならん

962:デフォルトの名無しさん
16/06/16 22:57:01.14 eFMzQDZe.net
StringBuilderと.valueOf()を覚えました。
public class Main {
public static void main(String[] args) {
StringBuilder sb = new StringBuilder();
for(int y = 1; y < 10; y++) {
for(int x = 1; x < 10; x++) {
int ans = y * x;
String str = String.valueOf(ans);
if(ans < 10) {
sb.setLength(0);
str = sb.append(" ").append(str).toString();
}
if(x != 9) {
sb.setLength(0);
str = sb.append(str).append(" ").toString();
}
System.out.print(str);
}
System.out.print("\n");
}
}
}

963:デフォルトの名無しさん
16/06/16 22:59:41.94 eFMzQDZe.net
Cはよく分かってるほうなので.append().toString()とか
気持ち悪いですね(笑)

964:デフォルトの名無しさん
16/06/16 23:01:01.60 L6uV1SZP.net
+は絶対ダメって訳じゃ無い

str = " " + str;
str += " ";

これだと無駄にインスタンス生成されるけど

1ステートメントで
String str = " " + String.valueOf(ans)
てやるなら問題なし

965:950
16/06/16 23:06:44.83 eFMzQDZe.net
みなさま、いろいろ�


966:ネアドバイスありがとうございます。 九九表示プログラムだけでもこんなにも学べるものなんですね。 おやすみなさい



967:デフォルトの名無しさん
16/06/16 23:20:02.46 /dCrOS1l.net
System.out.println();で
""を表示させるにはどうすればいいですか

968:デフォルトの名無しさん
16/06/16 23:23:31.49 c2UI9Bfi.net
>>951
==比較は駄目だけど+はいいだろ
何処に駄目と書いてあった?

969:デフォルトの名無しさん
16/06/16 23:23:46.35 L6uV1SZP.net
"\"\""

970:デフォルトの名無しさん
16/06/16 23:24:52.40 jO0P8oj4.net
>>956
甘い
sbのままappendしつづけ、2度のforを潜り抜け、
最期に1度だけSystem.out.print(sb)を唱えるのじゃ
StringBuilder.append(int i)があるのでvalueOfは無駄手間じゃのう

971:デフォルトの名無しさん
16/06/16 23:25:01.41 c2UI9Bfi.net
>>960
System.out.print("");
何故やるのか理解できないが

972:デフォルトの名無しさん
16/06/16 23:25:56.11 c2UI9Bfi.net
>>956
StringBuilderって何?

973:デフォルトの名無しさん
16/06/16 23:35:54.86 /dCrOS1l.net
>>964
ありがとうございます

System.out.println("この記号→"←を表示したい");
除外コマンドみたいなのってありませんでしたっけ

974:デフォルトの名無しさん
16/06/16 23:38:06.37 G8mFGz+4.net
>>962がスルーされててワロタ

975:デフォルトの名無しさん
16/06/16 23:39:12.65 c2UI9Bfi.net
>>966
それメソッドの問題じゃなくてリテラルの問題…
「java 文字列リテラル エスケープ」でググレ

976:デフォルトの名無しさん
16/06/17 00:44:32.11 iaYON6Q8.net
¥x22

977:デフォルトの名無しさん
16/06/17 03:15:42.57 PTNjRm2Y.net
\"

978:デフォルトの名無しさん
16/06/17 07:33:28.38 Ox7oWvp9.net
>>962
>>968
ありがとうございます

979:デフォルトの名無しさん
16/06/17 08:18:45.45 442rGUo0.net
次スレ

★★Java質問・相談スレッド178★★ [無断転載禁止]©2ch.net
スレリンク(tech板)

980:デフォルトの名無しさん
16/06/17 10:35:35.54 uuTM5EAb.net
toString()呼ばれた時に 各get****()っていうのをつなげて返したいんだけどなんかいい方法無いかな!!
public String toString()
{
String result="[";
result += "method1 : "+getMethod1();
result += "method2 : "+getMethod2();
result += "]";

return result;
}
みたいな感じでええのん?

981:デフォルトの名無しさん
16/06/17 13:07:45.21 7/Cp3IRC.net
>>973
ああ。それでもよし。

短時間に何回も呼び出すようなら効率上げるために return の直後に全部繋げるのを書くか StringBiffer 使って全部 apend() して toStrong() すれば良いと思う。

982:デフォルトの名無しさん
16/06/17 13:12:57.98 7/Cp3IRC.net
>>965
Java 1.5 からあるやつだ。StringBuffer 互換で動機化保証しないやつ。詳しくはドキュメント読め。

983:デフォルトの名無しさん
16/06/17 14:16:54.08 kcSK/gtD.net
うめ

984:デフォルトの名無しさん
16/06/17 14:17:54.06 91m52La+.net
てんてぇ

985:デフォルトの名無しさん
16/06/17 17:58:43.84 Ox7oWvp9.net
吉野家先生……

986:koro sensee
16/06/17 18:24:27.67 A0dgar5u.net
null, fu, fu, fu

987:デフォルトの名無しさん
16/06/17 19:02:34.65 8l6QBeuv.net
あ、変換間違えてた。動機化じゃなくて同期化。
動機化ってなんだよ。w

988:デフォルトの名無しさん
16/06/18 04:03:52.72 wJLjXt7N.net
うめ

989:デフォルトの名無しさん
16/06/18 05:37:46.95 w9zLlF5g.net
てんてー

990:デフォルトの名無しさん
16/06/18 07:58:04.34 tSisMXdT.net
★★Java質問・相談スレッド178★★ [無断転載禁止]©2ch.net
スレリンク(tech板)

991:デフォルトの名無しさん
16/06/18 11:03:05.02 /nZnQa3x.net
うめ

992:デフォルトの名無しさん
16/06/18 11:07:43.60 UnDxRKSP.net
UME

993:デフォルトの名無しさん
16/06/18 14:15:50.78 kiFN8nsu.net


994:デフォルトの名無しさん
16/06/18 14:21:30.20 tRBFzY8N.net
質問いいですか?

995:デフォルトの名無しさん
16/06/18 14:24:08.30 /nZnQa3x.net
>>987
まだはええよw

996:デフォルトの名無しさん
16/06/18 14:24:16.43 w9zLlF5g.net
銅像

997:デフォルトの名無しさん
16/06/18 15:24:53.55 tRBFzY8N.net
まだ早かったみたい

998:デフォルトの名無しさん
16/06/18 16:37:56.38 tarWYkxx.net
うめ

999:デフォルトの名無しさん
16/06/18 16:46:07.65 mKo0ibfd.net
public class Ume {
public static void main(String[] args) {
System.out.println("埋め");
}
}

1000:デフォルトの名無しさん
16/06/18 16:48:57.27 pG9pCEms.net
for(int i=0;i<7;i++){
  _2ch.write("tech",1458033246,"","sage","埋め");
}

1001:デフォルトの名無しさん
16/06/18 16:51:19.82 RY58SNRu.net
産め

1002:デフォルトの名無しさん
16/06/18 16:56:50.59 w9zLlF5g.net
throw new ThreadCloseException("梅");

1003:デフォルトの名無しさん
16/06/18 17:03:01.67 by2sfxCb.net
初心者なんですけど可変長×可変長の二次元配列みたいなのを作りたいんだがどんなやり方がありますか?

太郎 "リンゴ"
次郎 "リンゴ" "バナナ"
三郎 "ぶどう" "リンゴ" "バナナ"
.
.
みたいにしたいんだが
List<ArrayList<String>> nanelist = new ArrsyList<String>>();
List<String> fluitlist = new ArrayList<String>();
fluitlist.add("リンゴ");
namelist.add(fluitlist);
だと人物名を入れられませんよね?
人物のリストをリスト入れても二次元にする意味あまり無くなりますよね
リストのインデックスからそのインデックスの人物名や果物の配列を取得したいのですが。
人物の追加とその人物の果物リストの追加は同じひとつのループ上でやります
for(int i=0;i<a;i++){
人物リスト[i]に人物名追加
for(int x=0;x<b;x++){
人物[i]の果物リストに果物[x]追加
}
}
のようにします
参照するときは
for(int i=0;i<人物リスト.size;i++){
for(int x=0;x<人物リスト[i]果物リスト.size;x++)
Sysyemout.println(人物リスト[i] + 人物リスト[i]の果物リスト[x]);
}
}
みたいな感じにします

1004:デフォルトの名無しさん
16/06/18 17:12:45.66 pG9pCEms.net
埋め

1005:デフォルトの名無しさん
16/06/18 17:17:04.84 pG9pCEms.net
>>996
HashMap<String,String[]> unko=new HashMap<>;
unko.add("太郎",["リンゴ"]);
unko.add("次郎",["リンゴ","バナナ"]);
unko.add("三郎",["ぶどう","リンゴ","バナナ"]);

1006:デフォルトの名無しさん
16/06/18 17:18:57.52 by2sfxCb.net
>>998
ありがとうごさいます!

1007:デフォルトの名無しさん
16/06/18 17:20:47.91 RY58SNRu.net
hashMapだと名前かぶると使えないけどな

1008:1001
Over 1000 Thread.net
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。
life time: 94日 23時間 6分 42秒

1009:1002
Over 1000 Thread.net
2ちゃんねるの運営はプレミアム会員の皆さまに支えられています。
運営にご協力お願いいたします。


──────────
《プレミアム会員の主な特典》
★ 2ちゃんねる専用ブラウザからの広告除去
★ 2ちゃんねるの過去ログを取得
★ 書き込み規制の緩和
──────────

会員登録には個人情報は一切必要ありません。
月300円から匿名でご購入いただけます。

▼ プレミアム会員登録はこちら ▼
URLリンク(premium.2ch.net)
URLリンク(pink-chan-store.myshopify.com)


1010:過去ログ ★
[過去ログ]
■ このスレッドは過去ログ倉庫に格納されています


最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch