重要なお知らせ

「教えて! goo」は2025年9月17日(水)をもちまして、サービスを終了いたします。詳細はこちら>

【GOLF me!】初月無料お試し

Javaで15パズルを作ろうとしてるのですが、1~15をランダムにかつ1回ずつだすのに、shuffleを使おうと思ったのです。
ですが、ネットで調べてみてもいまいちshuffleというものを理解できません。
わかりやすく説明してください。

A 回答 (3件)

Listをimplementsしたコレクションの内容をかき混ぜます。



class trial {

public static void main(String[] arg) {
java.util.List c = new java.util.ArrayList();
for ( int i = 0; i < 10; ++i ) {
c.add(new Integer(i));
}
java.util.Collections.shuffle(c); // [ここ]
for ( int i = 0; i < 10; ++i ) {
System.out.print(c.get(i)+" ");
}
}
}

> いまいちshuffleというものを理解できません

なにがどう理解できないのかわかりません

この回答への補足

ありがとうございます。
えっと、shuffleというよりも、Java自体がなんです・・・(^^;)
 まず15パズルを作ろうとしているのが、今大学でJavaの講義を受けてて、「推理ゲーム」を作る課題が出て、それで15パズルを作ろうと思ったんです。
 このJavaの講義なんですが、for文とかint,doubleなどの説明はあったんですが、例えば、classとは何か?やvoidとは何か?ということについて、何も説明が無く、「こう書いてあるから、そういう風に書きましょう。」てな感じなんです。
 発想というのか、ひらめきはあるので、これまでも、ここならfor文を使えばいいとかそういう事についてはわかるのですが、Javaの根本があまりよくわかっていないんです。
今使っている教科書(著者:福島靖浩『(一週間でマスターする)Javaプログラミング』)を読んでも、あまり触れてなく、わかりません。
 
これからJavaをまだまだ勉強していくつもりなんで、Javaをとにかく作れるようになる本ではなく、理解しやすく・でもしっかりとJavaというものを解説しているような本を知っていましたら、ご紹介お願いします。

補足日時:2004/09/24 00:53
    • good
    • 0

> epistemeさんがお勧めする本をご紹介しててくださればとてもありがたいです。



生憎ですが、ビギナに適した本を僕は知りません。
    • good
    • 0
この回答へのお礼

そうでしたか。
いちいち、ご返答くださりありがとうございました。

大きな書店に行って色々な本を見てきます。

お礼日時:2004/09/27 21:54

> 今使っている教科書(著者:福島靖浩『(一週間でマスターする)Javaプログラミング』)を読んでも、あまり触れてなく、わかりません。



「一週間でマスターする」なんて謳い文句のついた本でキモを理解するのは(そしてそれを期待するのは)無理ではないかしら。

この回答への補足

はい、私もそう思います。

私は、もともとこの講義が始まる少し前にC/C++を勉強しようとしていたのですが、Javaの講義が始まり、ごちゃごちゃになりわからなくなると思い、まずJavaについて勉強しようと思いました。
そして、Javaの講義をきいていたのですが今回のような事が出てきて、これではいけないと思いまして、今の本のようにとにかくできればいいというようなのではなく、違う本を購入して、講義とは別で自分で勉強しようと思っています。

なので、epistemeさんがお勧めする本をご紹介しててくださればとてもありがたいです。

補足日時:2004/09/25 07:25
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!