horiuchi #6423(2008/06/03 23:33 GMT) [ Java ] Rating4/4=1.00
意味はないけど、Iterableにしてみました。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95
import java.math.BigInteger; import java.util.Iterator; import java.util.Random; public class Sample182 implements Iterable<String> { private static final int MAX_BUTTLES = 30; private static final String[] Monsters = { "焼きたてパン", "強いシャチホコ", "もんじゃ焼き一年生", "怪人ホタテ男", "ニセ勇者", "逃げ足の早いアレ", "睡魔", "煩悩", "愛らしい子犬の中の人", "恋するスズメバチ", "勇敢なクマンバチ", "信じられない物", "勇者の師匠", "浮遊する鎧", "怪盗ドボン", "闇の招き猫", "誘惑のカスタードクリーム", "しょっぱすぎる籠手", "カレー味の兜", "光沢だけは一流の盾", "若葉マークのモンスター", "新緑の季節", "梅雨時の車両のニオイ", "暑すぎる夏", "新宿らしき何か", "やたら発達したドーナツ", "育ちすぎたクマー", "なごやかな雰囲気", "凍り付いた気配", "忍び寄る恐怖", }; private static final String[] Skills = { "お豆腐の買い方", "鉛筆の買い方", "消しゴムの使い方", "メモの取り方", "攻撃に使えないこともない呪文", "裏町の歩き方", "森林浴", "珈琲の味", "しじみのみそ汁の作り方", "回覧板の回し方", "郵便物の投函方法", "立ち話のコツ", "猫の呼び方", "犬の呼び方", "カラスの呼び方", "鳩専用豆鉄砲", "秘密の趣味", "速く走るコツ", "剣の使い方", "斧の使い方", "まきわりで、まっきわりわり", "聖なる祈り", "孤独", "涼しく過ごすコツ", "お洒落のコツ", "卵をふわっと焼く方法", "ごはんの研ぎ方", "油汚れの対応方法", "大人の振るまい", "Suicaの使い方", }; private static final String MessageTemplate1 = "*-----%n" + "%sを倒した!%n" + "%sの経験値を得た。%n" + "勇者は%dにレベルが上がった!%n" + "勇者は、%sを覚えた。%n"; private static final String MessageTemplate2 = "*-----%n" + "%sを倒した!%n" + "%sの経験値を得た。%n" + "勇者は、また、レベルが上がった!%n" + "勇者は、ふと空しさを覚えた。%n"; private static final String MessageIntermission = "%n" + "そして、%n" + "かくかくしかじかで、山あり谷ありの冒険が続いたが割愛。%n"; @Override public Iterator<String> iterator() { return new Iterator<String>() { private final Random random_ = new Random(); private int buttle_ = 0; private BigInteger exp_ = BigInteger.ONE; private boolean isIntermission_ = false; @Override public boolean hasNext() { return buttle_ < MAX_BUTTLES; } @Override public String next() { if (isIntermission_) { isIntermission_ = false; return String.format(MessageIntermission); } else { buttle_++; String format = (buttle_ == MAX_BUTTLES)? MessageTemplate2: MessageTemplate1; exp_ = exp_.multiply(BigInteger.valueOf(buttle_)); isIntermission_ = true; return String.format(format, Monsters[random_.nextInt(Monsters.length)], exp_.toString(), buttle_, Skills[random_.nextInt(Skills.length)]); } } @Override public void remove() { throw new UnsupportedOperationException(); } }; } public static void main(String[] args) { for (String msg: new Sample182()) { System.out.println(msg); try { Thread.sleep(2000); } catch (InterruptedException ex) { ex.printStackTrace(); } } } }
Rating4/4=1.00-0+
[ reply ]
horiuchi
#6423()
[
Java
]
Rating4/4=1.00
意味はないけど、Iterableにしてみました。
Rating4/4=1.00-0+
[ reply ]