むかし、こんなプログラムを書いた。
GenericList(of Class) から一定条件の要素を取り除く
いま、もういちど、groovyで書いてみる。出演者は……増えたw。
まず、にゃんこクラス
package katagiri.nyanz
class Nyan { def name; def voice; def race;
} |
つぎに、にゃんこリストから、「ほげ~」と鳴くと除外するコードw
package katagiri.nyanz
class NyanzMain {
static main ( args ) { def nyans = [ new Nyan ( name: 'しゅうたん' , voice: 'にゃあ ', race: 'アメショ') , new Nyan ( name: 'ろり', voice: 'にゃあ' , race: 'アメショ') , new Nyan ( name: 'みずきちゃん' , voice: 'にゃあ' , race: 'スコティ' ) , new Nyan ( name: 'マグさん' , voice: 'ほげ~' , race: '名状しがたいオジさんのようなもの' ) , new Nyan ( name: 'ミーちゃま' , voice: 'にゃん' , race: 'Mix' ) , new Nyan ( name: 'はーくん' , voice: 'にゃん' , race: 'Mix' ) ] nyans.findAll { it.voice != 'ほげ~' }. each { println "${it.name}は${it.race}、「${it.voice}」" } }
} |
実行結果。
しゅうたんはアメショ、「にゃあ」 ろりはアメショ、「にゃあ」 みずきちゃんはスコティ、「にゃあ」 ミーちゃまはMix、「にゃん」 はーくんはMix、「にゃん」
|
当時は、groovyを知らなくて、こういうことができるなんて、知らなかったよ。というわけで、記録。