アニメ『ゲーマーズ!』
今のところこのアニメを見ても衝動は起こりませんが、原作を読むとゲームがやりたくなるらしいです。
私もゲームばかりやっていた一人ですが、格闘ゲームの操作と、コマンドの入力って何か似てるなあと思った頃から、ゲームの代わりにPCのコマンドを打つようになりました。
今やコマンドラインがゲームのようなものです。
(本記事はPowerShell入門記事としてコチラにもまとめています。)
さて、PowerShellはまだまだ続きます。慣れたらUnix/Linuxのコマンドよりもすごくなりそうな予感があります。
今回は、.NETのArrayListとHashSetを使います。
配列の使い方はこうでした。
PS C:\Users\takk> $arr=1..10 PS C:\Users\takk> $arr 1 2 3 4 5 6 7 8 9 10 PS C:\Users\takk>
ArrayListへ置き換えるには、new-objectを使います。
PS C:\Users\takk> $lis = new-object System.Collections.ArrayList(,$arr) PS C:\Users\takk> $lis 1 2 3 4 5 6 7 8 9 10 PS C:\Users\takk>
要素5番目に100を追加しましょう。
PS C:\Users\takk> $lis.Insert(5,100) PS C:\Users\takk> $lis 1 2 3 4 5 100 6 7 8 9 10
HashSetの置き換えも同様です。object型です。
PS C:\Users\takk> $hashset=new-object System.Collections.Generic.HashSet[object](,$arr) PS C:\Users\takk> $hashset 1 2 3 4 5 6 7 8 9 10 PS C:\Users\takk>
HashSetに重複した値を追加しようとすると、失敗します。
PS C:\Users\takk> $hashset.add(5) False PS C:\Users\takk> $hashset 1 2 3 4 5 6 7 8 9 10 PS C:\Users\takk>
差分を抽出してみましょう。
元の集合から、1,3,5,7,9を引いてみます。
PS C:\Users\takk> $hashset.ExceptWith(@(1,3,5,7,9)) PS C:\Users\takk> $hashset 2 4 6 8 10 PS C:\Users\takk>
コメント