0Pricing
C# Academy · Lezione

Suffissi nella pratica; casting e conversione; creazione di oggetti in C# 6

Apprenda a usare nella pratica i suffissi numerici, la differenza tra casting e conversione e come scrivere una creazione di oggetti compatibile con C# 6 (senza new con tipo target).

Suffissi nella pratica; casting e conversione; creazione di oggetti in C# 6 è una lezione C# Academy gratuita su CoddyKit. Questa è la lezione 3 di 3. Puoi leggere la lezione completa qui gratuitamente — poi esercitati direttamente nel browser con un editor di codice integrato e un tutor IA disponibile 24/7. Fa parte del percorso di apprendimento C# Academy, e i tuoi progressi si sincronizzano tra il web e l'app CoddyKit. Il corso C# Academy include 3 lezioni in totale.

Panoramica della lezione

Obiettivo: utilizzare correttamente i suffissi numerici, sapere quando eseguire il cast rispetto alla conversione e creare oggetti in C# 6 senza new tipizzato in base alla destinazione.

I suffissi nella pratica

Suffissi: utilizzi f per float (3.14f), m per decimal (10m) e L per long (123L). Scelga i tipi in base a precisione e intervallo.

Nozioni di base sui cast

Il casting modifica il modo in cui il compilatore interpreta il valore; i cast espliciti possono causare una perdita di dati.

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);
  }
}

Nozioni di base sulle conversioni

La conversione trasforma i dati: TryParse è l'opzione più sicura; Parse/Convert possono generare eccezioni in presenza di input non valido.

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);
  }
}

Creazione di oggetti in C# 6

In C# 6 non esiste new tipizzato in base alla destinazione: specifichi esplicitamente il tipo, a sinistra o nel costruttore. Eviti la sintassi più recente con i compilatori meno moderni.

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 + ")");
  }
}

Tutto insieme

Confronti i risultati di cast e conversione e osservi i suffissi riuniti in un unico esempio. Preferisca TryParse per l'input dell'utente.

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);
  }
}

Cast e conversione

Verifica rapida: quale affermazione su cast e conversione in C# è vera?

Riepilogo

Riepilogo: utilizzi i suffissi f/m/L, esegua cast solo quando è sicuro e converta quando serve una nuova rappresentazione, preferendo TryParse. In C# 6, dichiari esplicitamente i tipi: non è disponibile new tipizzato in base alla destinazione.

Domande Frequenti

La lezione «Suffissi nella pratica; casting e conversione; creazione di oggetti in C# 6» è gratuita?

Sì — il testo completo di «Suffissi nella pratica; casting e conversione; creazione di oggetti in C# 6» è gratuito qui sul web. Per esercitarvi in modo interattivo (un editor di codice integrato e un tutor IA 24/7) e sbloccare il resto del corso C# Academy, passa a CoddyKit PRO. Il corso C# Academy include 3 lezioni in totale.

Cosa imparerò in «Suffissi nella pratica; casting e conversione; creazione di oggetti in C# 6»?

Apprenda a usare nella pratica i suffissi numerici, la differenza tra casting e conversione e come scrivere una creazione di oggetti compatibile con C# 6 (senza new con tipo target). Eserciti C# Academy con codice pratico che esegui direttamente nel browser, e un tutor IA 24/7 risponde alle tue domande mentre lavori sulla lezione.

Ho bisogno di esperienza per iniziare C# Academy?

Non è richiesta alcuna esperienza precedente. C# Academy su CoddyKit è strutturato per principianti e studenti avanzati, quindi puoi iniziare da qui o dall'inizio e procedere al tuo ritmo. Questa è la lezione 3 di 3.

Quanto tempo richiede la lezione «Suffissi nella pratica; casting e conversione; creazione di oggetti in C# 6»?

La maggior parte delle lezioni CoddyKit richiede circa 5–10 minuti. Ogni lezione è breve e interattiva, quindi fai progressi costanti e riprendi esattamente da dove hai lasciato su web e app.

Posso scrivere ed eseguire codice in questa lezione C# Academy?

Sì. Ogni lezione C# Academy include un editor di codice integrato, quindi scrivi ed esegui codice reale direttamente nel tuo browser e ricevi feedback istantaneo dall'IA — nessuna configurazione locale necessaria.

Tutte le lezioni di questo corso

  1. Valore e riferimento; letterali; inferenza con var; const/readonly
  2. Operatori ed espressioni: aritmetici, di confronto e logici
  3. Suffissi nella pratica; casting e conversione; creazione di oggetti in C# 6
← Torna a C# Academy