プログラミング

C#

【C#】foreach文でもindexは使用できる!

Select()を使うことで、foreach文内でインデックス(何番目の要素か?)を使用できる!コレクション(配列やリスト)の各要素を使って何かしらの処理を行いたいとき、foreach文を使うことでfor文に比べて簡潔に書くことができます。...
プログラミング

UML図の作成に有用!VisualStudioCode+Draw.ioを使ってみる

仕事でUML図(クラス図やシーケンス図など)を書くことがあります。以前はExcelを使ってUML図を作成していましたが、かなり面倒な作業でした。たとえばクラス図を作る際には、セルの横幅を調整したり矢印でつなげるために背景色を透明にした図形を...
C#

【C#】コレクションの変化を監視できる「ObsevableCollection<T>」の使い方

コレクションに対してなにかしらの操作(追加や削除など)をしたときに、なにかしらの処理を行いたいことがあります。そんなときはObservableCollection<T>を使用すると便利です。ちなみにObservableCollection<...
C#

【C#】GroupBy()を使用したリストのグループ分け

LINQのGroupByメソッドを使用することで、リストを特定のプロパティの値でグループ分けすることができます。やりたいこと以下のプロパティを持つProductクラスがあります。ID名前(Name)カテゴリー(Category)価格(Pri...
C#

【C#】要素数の取得にWhere()は不要。Count()の引数で対応可能

あるリストにたいして「特定の条件にあう要素の個数」を取得したい時があると思います。単純に考えると以下の手順で処理を行うでしょう。Where()で条件にあう要素のみ抽出する。Count()で個数を取得する。public class Progr...
C#

【C#】リストの末尾を消去する(LINQ)

LINQを使ってリストの末尾を消去する方法を紹介します。RemoveAt()|元のリスト自体を変更するリストに対してRemoveAt(リストの要素数 - 1)を呼び出すことで、そのリスト自体の末尾を削除できます。public class P...
C#

【C#】LINQを使って「三角数列(数値リストの先頭から各項までの合計の数値リスト)」を作る。

非常に言葉で説明するのは難しいのですが、ある数値リストがあったとき、そのリストの各項までの合計値を持つリストを作る処理を紹介します(どうやら「三角数列」と呼ぶらしいです)。イメージは以下の通りです。List<int> {1 ,2 ,3 ,4...
C#

【C#】Colorインスタンスから「RGB(FFFFFF)」形式の文字列を取得する方法。

ども、村正です。今回は色情報を表すColorインスタンスから、RGB(赤、緑、青)の色情報を「FFFFFF」という文字列で取得する方法について紹介します。やりたいこと今回やりたいことは以下の通りです。Colorインスタンスから、RGBの色情...
C#

【C#】プロパティの「init;」ってなんぞ?

プロパティのsetter部は基本的に「set;」ですが、「初期化時のみ設定可能」を表す「init;」にすることができます。下記のコードのようにプロパティの「set;」を「init;」にすることで、インスタンスの生成時のみ値を設定できるように...
C#

【C#】列挙体とは?列挙体を使ってマジックナンバーをなくそう

ども、村正です!今回は、列挙体について紹介していきたいと思います。列挙体とは?列挙体(Enum)とは、特定のグループに属する種類のものを、名前が付いたいくつかの選択肢で表現する仕組み(構造)です。よく例として挙げられるのは「曜日を表現する列...