気ままなUnityエンジニアブログ

新米Unityエンジニアが送る解説アウトプットブログです。Twitter : @UjinUnity

MENU

【 C# 】個人的に良く使うC#機能集!

スポンサーリンク

f:id:Wojtek:20190621085931j:plain

皆さん大好きC#

筆者はC ⇨ C++C# と学習してきました。

今回はよく使うC#の機能集をご紹介します!

Linq

みんな大好きLinqです。

かれこれ10年以上前の技術ですが、未だに目新しさがあります。

 

簡単に説明するとforeach中に条件分岐などを行ってくれる超便利機能です。

重さもforeachと殆ど変わりません。( ForEachなどは除く)

 

Linqで使えるメソッド集

 Where()...if分、nullチェックも行える。

例 list.Where(x => x > 0);

 

 

Select... 変数を作るイメージ。

例 list.Select(x => new Vector3(x,0,0)

この後の処理ではlistの内部は全てVector3型になったとして判定されます。

 

OrderBy()...値が少ない順にList内部のインデックスを変更する。

例 list.Orderby(x => x.id)

listのプロパティにあるx.idの少ない順にソートしてくれます。

 

Getter処理の簡略化

C#6.0より追加されたコーディング省略機能

 

private Subject<bool> isSub = new Subject<book>();

 

public IObserval<bool> OnSub => isSub;

 

今まではset と get を書かなければなりませんでしたが、追加で処理を入れない場合は => でスマートに実行できます。

 

今後使ってみたい機能

UnityがC#7.0になったら是非とも使いたいのが

 ・タプル

  ・ローカル関数

です。

 

双方とも勉強中なので後ほど記事にしたいと思います。