-
C#で複数行の文字列リテラルを定義する方法をわかりやすく解説
C#では、改行を含む長いテキストをそのままコードに記述したい場面がよくあります。たとえば、次のような文字列を扱うケースを考えてみましょう。Welcome User, Kindly wait for the image to loadこの文字列を複数行に分けて記述するには、文字列の先頭に @(アットマーク) を付ける「逐語的識別子(verbatim identifier)」を使用します。通常の文字列リテラルでは改行やエスケープシーケンスの処理が必要ですが、@ を付けることで、ソースコード上の見た目のまま文字列を定義できます。@ を使った複数行文字列の基本的な書き方まず、次のように @ を付けた文
-
C#で変数に値を割り当てる方法をわかりやすく解説
変数とは何か変数(variable)とは、プログラムが操作できる記憶領域に付けられた名前のことです。C#では、すべての変数が特定の型を持っており、その型によって次の要素が決まります。変数が使用するメモリのサイズと配置(レイアウト)そのメモリに格納できる値の範囲変数に対して実行できる操作の種類つまり、型を選ぶことは「その変数にどんなデータを扱わせるのか」を決めることに直結します。たとえば int 型なら整数、double 型なら小数を扱うといった具合です。変数への値の割り当て方変数に値を割り当てる(代入する)には、代入演算子「=」の右側に値を記述します。基本的な書き方は次のとおりです。int a
-
C#で同じ変数に複数の値を代入する方法
C#で1つの変数に複数の値を持たせたい場合、配列(Array)を使うのが最も基本的な方法です。5つの値を扱うために変数を5つ個別に用意する代わりに、配列を使えば1つの変数名だけでまとめて管理できます。ここでは、文字列型の配列を使って、1つの変数に3つの値を格納する方法を解説します。配列の宣言方法まず、要素数3の文字列配列を宣言します。string[] arr = new string[3];配列の初期化宣言と同時に、波括弧 { } を使って各要素に値を代入できます。string[] arr = new string[3] {"one", "two", &
-
C#のNull合体演算子(??)の使い方を徹底解説
Null合体演算子(??)は、null許容値型や参照型と組み合わせて使用される演算子です。片方のオペランドを、暗黙的な変換が可能な別のnull許容(または非null)値型オペランドの型へ変換する目的で利用されます。動作はシンプルで、最初のオペランドの値がnullであれば2番目のオペランドの値を返し、nullでなければ最初のオペランドの値をそのまま返します。この特性により、nullチェックのif文を書かずに簡潔にデフォルト値を設定できるのが大きなメリットです。基本構文result = operand1 ?? operand2;上記のコードでは、operand1がnullならoperand2の値が
-
C#のparamsキーワードで可変長引数(パラメーター配列)を使う方法
メソッドを宣言する際、引数として渡される値の数が事前にわからないことがあります。そんなときに役立つのが、C#のparamsキーワードによるパラメーター配列です。paramsを使えば、呼び出し側で渡す引数の個数を自由に変えられるため、柔軟なメソッド設計が可能になります。paramsの基本的な宣言方法パラメーター配列は、以下のようにメソッドの引数にparamsキーワードを付けて宣言します。public int AddElements(params int[] arr) { }C#でのparams実装例次のサンプルコードでは、params int[]を受け取るメソッドを定義し、渡されたすべての整数の
-
C#の演算子オーバーロードとは?使い方とサンプルコードをわかりやすく解説
C#における演算子のオーバーロード(Operator Overloading)とは、既存の演算子(+、-、== など)に対して、ユーザー定義型(クラスや構造体)向けの独自の動作を定義できる機能です。オーバーロードされた演算子は、特別な名前を持つ関数として扱われ、operator キーワードの後に定義したい演算子の記号を続けて宣言します。通常の関数と同様に、戻り値の型とパラメータリストも必要です。オーバーロードできる演算子・できない演算子の一覧C#では、すべての演算子がオーバーロードできるわけではありません。以下の表に、オーバーロードの可否をまとめました。No.演算子と説明1+、-、!、~、++
-
C#のQueueクラスの使い方を解説!FIFOコレクションの基本メソッドと実装例
C#のQueue(キュー)クラスは、先入れ先出し(FIFO:First-In, First-Out)方式でオブジェクトを管理するコレクションです。追加された順番どおりに要素へアクセスしたい場合に活用されます。要素をキューに追加することを「エンキュー(Enqueue)」、キューから取り出すことを「デキュー(Dequeue)」と呼びます。Queueクラスの主なメソッド一覧以下の表に、Queueクラスでよく使用されるメソッドをまとめました。No.メソッドと説明1public virtual void Clear();Queue内のすべての要素を削除します。2public virtual bool C
-
C#でクラスのメソッドを呼び出す方法をわかりやすく解説
C#でクラスのメソッドを呼び出すには、オブジェクト名の後にドット(.)を付けて、その後にメソッド名を記述します。基本的な構文は以下のとおりです。obj1.Display();メソッド呼び出しの基本例として、クラス名が「ApplicationOne」である場合を考えてみましょう。このクラスのインスタンスを生成し、メソッドを呼び出すコードは次のようになります。ApplicationOne one = new ApplicationOne(); // displayMaxメソッドの呼び出し ret = one.displayMax(a, b);まず new キーワードを使ってクラスのインスタンスを
-
C#で文字列の長さを取得する方法を解説!String.Lengthプロパティの使い方
C#で文字列の長さを取得する基本 C#で文字列の長さ(文字数)を取得するには、String.Lengthプロパティを使用します。これは最もシンプルで一般的な方法です。 str.Length Lengthプロパティは、指定された文字列に含まれる文字数を計算して返します。例えば、文字列「Amit」の場合は4文字となるため、Lengthプロパティの戻り値は「4」になります。 string str = Amit; サンプルコード 以下は、C#で文字列の長さを計算して表示するプログラムの完全な例です。 using System; using System.Collections; namespace
-
C#でゼロ除算例外(DivideByZeroException)をキャッチする方法
C#では、整数値をゼロで除算しようとすると System.DivideByZeroException がスローされます。この例外は、プログラムの実行中に予期しないクラッシュが発生するのを防ぐために、try-catchブロックを使って適切に捕捉(キャッチ)する必要があります。DivideByZeroExceptionは、ゼロで割り算を行った際に発生するエラーを処理するための専用クラスです。catch句でこの例外を指定することで、ゼロ除算によるエラーだけをピンポイントで捕捉できます。コード例以下は、try-catch-finally構文を使用してゼロ除算例外を捕捉するサンプルコードです。using
-
C#で2つの文字列を連結する方法【string.Concatメソッドの使い方】
C#で2つの文字列を連結(結合)するには、String.Concatメソッドを使用します。このメソッドは、指定した複数の文字列をひとつにつなげた新しい文字列を返します。例えば、str1とstr2という2つの文字列変数を連結したい場合は、次のようにConcatメソッドの引数として渡します。string str3 = string.Concat(str1, str2);サンプルコード以下は、実際に2つの文字列「Brad」と「Pitt」を連結して表示するプログラムの例です。using System; class Program { static void Mai
-
C#の代入演算子の使い方を解説!全種類の一覧とサンプルコード
C#で変数に値を格納するには、代入演算子を使用します。「=」のような基本的な演算子に加えて、四則演算やビット演算と代入を同時に行える複合代入演算子も用意されており、コードをより簡潔に記述できます。 C#の代入演算子一覧 C#で利用できる主な代入演算子は以下の通りです。 演算子説明使用例=単純代入演算子。右側の値を左側の変数に代入するC = A + B は A + B の計算結果を C に代入+=加算代入演算子。左オペランドに右オペランドを加算し、結果を左オペランドに代入するC += A は C = C + A と同等-=減算代入演算子。左オペランドから右オペランドを減算し、結果を左オペランドに
-
C#でArrayListクラスを使うには?基本の使い方と主なプロパティを解説
ArrayListクラスとはArrayListクラスは、個別にインデックスでアクセスできるオブジェクトの順序付きコレクションを表します。通常の配列と異なり、サイズが可変であるため、要素を自由に追加・削除できる点が大きな特徴です。そのため、配列の柔軟な代替手段として広く利用されてきました。ArrayListを使用するには、System.Collections名前空間をusingディレクティブで追加する必要があります。ArrayListクラスの主なプロパティ以下の表は、ArrayListクラスでよく使われる主なプロパティの一覧です。No.プロパティと説明1CapacityArrayListが格納で
-
C#のデフォルトコンストラクターとは?特徴と使い方を実例つきで解説
コンストラクター(constructor)とは、クラスの新しいオブジェクト(インスタンス)が生成されるタイミングで必ず実行される特殊なメンバー関数です。オブジェクトの初期化処理を担う重要な存在です。その中でも、引数(パラメーター)を一切取らないコンストラクターを「デフォルトコンストラクター」と呼びます。 デフォルトコンストラクターのポイント 引数を持ちません。 クラスにコンストラクターを1つも定義しない場合、C#のコンパイラが自動的に暗黙的なデフォルトコンストラクターを提供します。 暗黙的なデフォルトコンストラクターは、数値型を「0」、bool型を「false」、参照型を「null」といった
-
C#のクラスインスタンスとは?オブジェクトの基本と使い方を解説
クラスインスタンスとは クラスインスタンスとは、すなわちオブジェクトのことです。C#は他のオブジェクト指向言語と同様に、オブジェクトとクラスという概念を持っています。オブジェクトは現実世界の実体(エンティティ)を表し、クラスを実際に生成したものがインスタンスです。クラスのメンバー(フィールドやメソッド)には、このオブジェクトを通じてアクセスします。 ドット演算子でメンバーにアクセスする クラスのメンバーにアクセスするには、オブジェクト名の後にドット(.)演算子を付けます。ドット演算子は、オブジェクトの名前とメンバーの名前を結び付ける役割を果たします。 例えば、次のコードでは Box クラスの
-
C#のクラスとは?定義方法と基本構造を初心者向けに解説
C#におけるクラスの基本的な考え方C#において、クラス(class)とは、あるデータ型の設計図(ブループリント)を定義するものです。クラスをもとにして実際に生成されたデータの実体をオブジェクト(object)と呼び、これをクラスの「インスタンス」といいます。また、クラスを構成するメソッドや変数は、まとめてクラスのメンバー(members)と呼ばれます。クラスを理解することは、オブジェクト指向プログラミングを学ぶ上で最も重要な第一歩となります。クラス定義の一般的な書式クラスの定義は、キーワード class から始まり、その後にクラス名を記述します。そして、波括弧 { } で囲まれた部分がクラスの
-
C#のコレクションクラスとは?主な種類とBitArrayクラスの使い方を解説
C#におけるコレクションクラスは、要素へのメモリを動的に割り当てたり、インデックスに基づいて項目のリストへアクセスしたりするなど、さまざまな用途で活用される重要なクラス群です。System.Collections名前空間には、データの管理方法やアクセス方式が異なる複数のコレクションクラスが用意されており、用途に応じて使い分けることで効率的なプログラミングが可能になります。C#の主なコレクションクラス一覧C#でよく使用される代表的なコレクションクラスは以下のとおりです。番号クラス名と説明1ArrayList個別にインデックスを付けてアクセスできる、オブジェクトの順序付きコレクションを表します。サ
-
C#のコメントとは?複数行・単一行コメントの書き方を解説
コメントは、コードの内容や意図を説明するために記述する注釈です。コンパイラはコメント部分を完全に無視するため、プログラムの動作には一切影響しません。C#では、複数行にわたるコメントは「/*」で始まり、「*/」で終わります。 複数行コメント /* 以下はC#における 複数行コメントの例です */ 「/* ... */」で囲まれた範囲はすべてコンパイラによって無視されます。処理の概要や注意点など、複数行にわたる説明を残したい場合に使用します。 単一行コメント // 変数の宣言 int a = 10; 単一行コメントは「//」から行末までがコメントとして扱われます。変数の意味や処理の意図を手軽にメモ
-
C#のConditional属性(条件付き属性)とは?基本構文と使い方を実例で解説
属性(Attribute)は、プログラムにメタデータを追加するための仕組みです。コンパイラへの指示や、コメント・説明文、メソッドやクラスに関する付加情報などをコードに埋め込むことができます。Conditional属性とはConditional属性は、あらかじめ定義されている属性の一つで、指定したプリプロセッサ識別子(シンボル)が定義されている場合にのみ実行される「条件付きメソッド」をマークします。この属性を使用すると、Debug や Trace など、指定されたシンボルの値に応じてメソッド呼び出しの条件付きコンパイルが行われます。たとえば、デバッグ中に変数の値を表示したい場合などに活用できます
-
C#のコンストラクターとは?基本の仕組みと使い方を実例付きで解説
C#におけるコンストラクターとは、クラスから新しいオブジェクト(インスタンス)を生成する際に、自動的に実行される特殊なメンバー関数です。オブジェクトの初期化処理を行うために使われ、C#プログラミングにおいて非常に重要な役割を担っています。コンストラクターの基本的な特徴コンストラクターには、以下のような特徴があります。クラスの新しいインスタンスが作成されるたびに自動的に呼び出される名前は必ずクラス名と完全に同じにする必要がある戻り値の型を持たない(voidも指定しない)コンストラクターの定義例コンストラクターはクラス名と同じ名前で定義します。次のように記述します。class Demo {