LoginSignup
0
0

More than 3 years have passed since last update.

javaで席替え

Posted at

Javaで男性12人と女性8人の席替え

実現したいこと

・配置はランダム
・横一列のどこかに女性一人以上を配置したい
・目の悪い人が入れば前に固定
・分かりやすいコード

結果

シャッフルされたリストから、get()で取り出す。
System〜printlnで、座席に見えるようにした

・配置はランダム
 →リストをCollections.shuffle()で毎回結果が変わる
・横一列のどこかに女性一人以上を配置したい
 →あらかじめ、女性が来るのか男性がくるのか、配置される場所を決めた
・目の悪い人の固定
 →リストから外し、”〜get()”のとこを消して固定する人の名前にする

※プログラムを実行すると一瞬で終わるのでちょっと退屈
※一度隣同士になった人を避けるなどは出来てない

コード


import java.util.ArrayList;
import java.util.Collections;

public class Sekigae4 {
        public static void main(String[] args) {

                ArrayList<String> man = new ArrayList<String>();
                man.add("男性1  ");
                man.add("男性2  ");
                man.add("男性3  ");
                man.add("男性4  ");
                man.add("男性5  ");
                man.add("男性6  ");
                man.add("男性7  ");
                man.add("男性8  ");
                man.add("男性9  ");
                man.add("男性10 ");
                man.add("男性11 ");
                man.add("男性12 ");

                ArrayList<String> woman = new ArrayList<String>();
                woman.add("女性1 ");
                woman.add("女性2 ");
                woman.add("女性3 ");
                woman.add("女性4 ");
                woman.add("女性5 ");
                woman.add("女性6 ");
                woman.add("女性7 ");
                woman.add("女性8 ");

                Collections.shuffle(man);
                Collections.shuffle(woman);

                System.out.println("--並び替え後--");
                System.out.println(woman.get(0) + " | " + man.get(0)   + " | " + man.get(1)   + " | "+ man.get(2));
                System.out.println(woman.get(1) + " | " + man.get(3)   + " | " + man.get(4)   + " | "+ woman.get(2));
                System.out.println(man.get(5)   + " | " + man.get(6)   + " | " + man.get(7)   + " | "+ woman.get(3));
                System.out.println(woman.get(4) + " | " + woman.get(5) + " | " + man.get(8)   + " | "+ man.get(9));
                System.out.println(man.get(10)  + " | " + man.get(11)  + " | " + woman.get(6) + " | "+ woman.get(7));
        }
}
0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0