Beberapa Blok Catch
Termasuk bagian Logika dan Alur dalam perjalanan C# di Coddy. Pelajaran 25 dari 66.
Beberapa blok catch memungkinkan kamu menangani berbagai jenis pengecualian dengan kode khusus untuk setiap jenis pengecualian.
Mulailah dengan blok try dasar:
try
{
int number = int.Parse("abc");
}
Tambahkan blok catch untuk exception tertentu:
try
{
int number = int.Parse("abc");
}
catch (FormatException ex)
{
Console.WriteLine("Format Exception: " + ex.Message);
}
Kamu dapat menambahkan beberapa blok catch untuk menangani exception yang berbeda:
try
{
int number = int.Parse("abc");
int result = 10 / number;
}
catch (FormatException ex)
{
Console.WriteLine("Format Exception: " + ex.Message);
}
catch (DivideByZeroException ex)
{
Console.WriteLine("Divide By Zero Exception: " + ex.Message);
}
Blok catch pertama yang cocok akan dijalankan. Urutkan blok catch-mu dari tipe exception yang paling spesifik hingga yang paling umum.
Tantangan
MudahBuat method bernama DivideNumbers yang menerima dua parameter string:
numeratorStr: string yang mewakili pembilangdenominatorStr: string yang mewakili penyebut
Method tersebut harus:
- Mencoba mengurai kedua string menjadi bilangan bulat
- Mencoba membagi pembilang dengan penyebut
- Mengembalikan hasil sebagai bilangan bulat
- Menangani FormatException dengan mencetak "Invalid format" dan mengembalikan 0
- Menangani DivideByZeroException dengan mencetak "Cannot divide by zero" dan mengembalikan 0
- Menangani exception lainnya dengan blok catch umum yang mencetak "An error occurred" dan mengembalikan 0
Coba sendiri
using System;
public class Program
{
public static int DivideNumbers(string numeratorStr, string denominatorStr)
{
// Tulis kodemu di sini
}
public static void Main(string[] args)
{
string numeratorStr = Console.ReadLine();
string denominatorStr = Console.ReadLine();
int result = DivideNumbers(numeratorStr, denominatorStr);
Console.WriteLine("Result: " + result);
}
}Pelajaran ini berisi kuis singkat. Mulai pelajarannya untuk menjawab kuis dan melacak progresmu.
Semua pelajaran di Logika dan Alur
1array Multidimensi
Dasar-Dasar array 2DMendeklarasikan dan Menginisialisasi array 2DMengakses Elemen array 2DPerulangan Bersarang dengan array 2Darray BergerigiOperasi Matriks UmumRangkuman: array Multidimensi4Teknik Alur Kontrol
Pengembalian DiniKlausa PenjagaPernyataan Lompatan (goto)Break dan ContinueMeratakan Percabangan Bersarang7Operator Logika Lanjutan
Evaluasi Hubung SingkatOperator Logika PercabanganPrioritas OperatorRingkasan Operator Lanjutan2Pengambilan Keputusan Tingkat Lanjut
Beberapa KondisiLogika Boolean yang KompleksPerbandingan If dan SwitchPernyataan Switch BersarangUlasan: Pengambilan Keputusan Tingkat Lanjut5Penanganan Exception
Dasar Try-CatchJenis ExceptionBeberapa Blok CatchBekerja dengan fileBlok FinallyUsing vs. Try-FinallyException KustomRingkasan: Penanganan error3Peningkatan Loop
Performa LoopIterasi yang KompleksSetiap Jenis LoopRefactoring LoopRangkuman: Loop yang Dioptimalkan6Penanganan Null
Dasar Referensi NullTipe Nilai NullablePola Pemeriksaan NullPemrograman DefensifRingkasan: Keamanan NullLatihan sendiri: Compiler C# online