0Pricing
C# Academy · レッスン

サフィックスの実践、キャストと変換、C# 6のオブジェクト生成

数値サフィックスを実際に使い、キャストと変換の違いを学びます。また、ターゲット型指定newを使わないC# 6対応のオブジェクト生成方法を確認します。

「サフィックスの実践、キャストと変換、C# 6のオブジェクト生成」はCoddyKit上の無料C# Academyレッスンです。 これはレッスン3/3です。 下記で完全なレッスンを無料で読むことができます。その後、ブラウザ内の組み込みコードエディタと24時間対応のAIチューターでハンズオン演習できます。 これはC# Academy学習パスの一部であり、ウェブとCoddyKitアプリ全体で進捗が同期されます。 C# Academyコースには全3レッスンが含まれています。

レッスン概要

目標:数値サフィックスを正しく使い、キャストと変換を使い分け、ターゲット型 new を使わずに C# 6 でオブジェクトを作成します。

サフィックスの実践

サフィックス:float には f(3.14f)、decimal には m(10m)、long には L(123L)を使います。精度と範囲に応じて型を選びます。

キャストの基礎

キャストは、コンパイラーによる値の解釈の仕方を変更します。明示的なキャストではデータが失われる場合があります。

using System;

public class Program
{
  public static void Main(string[] args)
  {
    // Implicit numeric promotion (safe)
    int i = 42;
    double d = i; // implicit cast to double
    Console.WriteLine("d = " + d);

    // Explicit cast (possible data loss)
    double pi = 3.99;
    int n = (int)pi; // truncates
    Console.WriteLine("n = " + n);
  }
}

変換の基礎

変換はデータを変形します。TryParse が最も安全で、入力が不正な場合は Parse/Convert が例外をスローすることがあります。

using System;

public class Program
{
  public static void Main(string[] args)
  {
    string text = "123";
    int value;

    // TryParse: safe conversion (no exception)
    bool ok = int.TryParse(text, out value);
    Console.WriteLine("ok=" + ok + " value=" + value);

    // Convert: throws if invalid
    int v2 = Convert.ToInt32(3.7); // rounds to 4
    Console.WriteLine("v2=" + v2);

    // Parse: throws if invalid
    int v3 = int.Parse("42");
    Console.WriteLine("v3=" + v3);
  }
}

C# 6 のオブジェクト作成

ターゲット型 new は使えません:C# 6 では型を明示的に記述します(左辺またはコンストラクターで指定します)。古いコンパイラーでは、新しい構文を避けてください。

using System;

// Simple point class
public class Point
{
  public int X;
  public int Y;
}

public class Program
{
  public static void Main(string[] args)
  {
    // C# 6 style: specify the type on the left or right
    Point p1 = new Point();
    p1.X = 1; p1.Y = 2;

    var p2 = new Point(); // type inferred from constructor
    p2.X = 3; p2.Y = 4;

    Console.WriteLine("p1=(" + p1.X + "," + p1.Y + ")");
    Console.WriteLine("p2=(" + p2.X + "," + p2.Y + ")");
  }
}

すべてを組み合わせる

キャストと変換の結果を比較し、サフィックスを1か所で確認します。ユーザー入力には TryParse を優先します。

using System;

public class Program
{
  public static void Main(string[] args)
  {
    // Suffixes
    float f = 2.5f;
    decimal price = 9.99m;
    long big = 10000000000L;
    Console.WriteLine("f=" + f + " price=" + price + " big=" + big);

    // Cast vs Convert
    double d = 5.8;
    int viaCast = (int)d;              // 5 (truncate)
    int viaConvert = Convert.ToInt32(d); // 6 (round)
    Console.WriteLine("viaCast=" + viaCast + " viaConvert=" + viaConvert);

    // TryParse safety
    int n;
    bool ok = int.TryParse("oops", out n);
    Console.WriteLine("TryParse ok=" + ok + " n=" + n);
  }
}

キャストと変換

確認しましょう:C# におけるキャストと変換について正しい説明はどれですか?

まとめ

まとめ:f/m/L サフィックスを使い、安全な場合にのみキャストします。新しい表現が必要な場合は変換し、TryParse を優先します。C# 6 では型を明示的に宣言し、ターゲット型 new は使いません。

よくある質問

「サフィックスの実践、キャストと変換、C# 6のオブジェクト生成」レッスンは無料ですか?

はい。「サフィックスの実践、キャストと変換、C# 6のオブジェクト生成」の完全なテキストはこのウェブで無料で読めます。インタラクティブに演習し(組み込みコードエディタと24時間対応のAIチューター)、C# Academyコースの残りをアンロックするには、CoddyKit PROにアップグレードしてください。 C# Academyコースには全3レッスンが含まれています。

「サフィックスの実践、キャストと変換、C# 6のオブジェクト生成」で何を学びますか?

数値サフィックスを実際に使い、キャストと変換の違いを学びます。また、ターゲット型指定newを使わないC# 6対応のオブジェクト生成方法を確認します。 ブラウザで直接実行するハンズオンコードでC# Academyを演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。

C# Academyを始めるのに経験は必要ですか?

事前経験は必要ありません。CoddyKitのC# Academyは初級者から上級者向けに構成されているため、ここから始めるか最初から始めて、自分のペースで進むことができます。 これはレッスン3/3です。

「サフィックスの実践、キャストと変換、C# 6のオブジェクト生成」レッスンにはどのくらい時間がかかりますか?

ほとんどのCoddyKitレッスンは約5~10分かかります。各レッスンはコンパクトでインタラクティブなので、着実に進歩し、ウェブとアプリ全体で正確に前回の場所から再開できます。

このC# Academyレッスンでコードを書いて実行できますか?

はい。すべてのC# Academyレッスンに組み込みコードエディタが含まれているため、ブラウザでリアルコードを書いて実行し、即座のAIフィードバックを取得できます。ローカル設定は不要です。

このコースのすべてのレッスン

  1. 値型と参照型、リテラル、varによる推論、const/readonly
  2. 演算子と式:算術、比較、論理
  3. サフィックスの実践、キャストと変換、C# 6のオブジェクト生成
← C# Academyに戻る