Kaedah Parse() dan TryParse() dalam C#: bila hendak menggunakan yang mana satu?
Menghuraikan nilai angka dari rentetan ialah tugas biasa dalam C#. Dua kaedah yang biasa digunakan ialah Parse() dan TryParse(). Walaupun kedua-duanya direka untuk menukar rentetan kepada perwakilan angka, mereka mengambil pendekatan yang berbeza dan menawarkan kelebihan yang berbeza.
Kaedah Parse()
Parse() cuba menghuraikan rentetan yang ditentukan dan memberikan hasilnya terus kepada pembolehubah sasaran. Jika penukaran berjaya, operasi diteruskan tanpa sebarang petunjuk ralat. Walau bagaimanapun, jika penghuraian gagal, ia akan membuang pengecualian.
<code class="language-c#">int number = int.Parse(textBoxNumber.Text);</code>
Kaedah ini sesuai apabila anda menjangkakan rentetan itu menjadi perwakilan angka yang sah. Jika anda menjangkakan kemungkinan ralat penghuraian, adalah disyorkan untuk membalut operasi Parse() dalam blok cuba-tangkap untuk mengendalikan sebarang pengecualian.
Kaedah TryParse()
Tidak seperti Parse(), TryParse() mengembalikan nilai Boolean yang menunjukkan kejayaan atau kegagalan operasi penghuraian. Ia memberikan hasil kepada parameter output yang ditentukan.
<code class="language-c#">int number; bool success = int.TryParse(textBoxNumber.Text, out number);</code>
Kelebihan kaedah ini ialah ia membolehkan anda mengendalikan hasil penghuraian tanpa membuang pengecualian. Jika TryParse() mengembalikan benar, penukaran berjaya dan parameter output mengandungi nilai yang dihuraikan. Jika ia mengembalikan palsu, penukaran gagal dan anda boleh melaksanakan mekanisme pengendalian pengecualian atau pelaporan ralat yang sesuai.
Ralat semasa menyemak nota
Parse() sendiri tidak mengandungi mekanisme semakan ralat seperti blok cuba-tangkap. Sebaliknya, ia bergantung kepada anda untuk mengendalikan kemungkinan pengecualian penghuraian secara eksplisit melalui blok cuba-tangkap atau teknik pengendalian ralat lain.
TryParse(), sebaliknya, direka khusus untuk mengelakkan pengecualian dan memberikan petunjuk yang boleh dipercayai tentang kejayaan penghuraian. Ia tidak mempunyai blok cuba-tangkap secara dalaman dan berjalan lebih cepat daripada Parse(). Parse() boleh memanggil TryParse() secara dalaman dan membuang pengecualian jika TryParse() mengembalikan false.
Cadangan penggunaan
Gunakan Parse() apabila anda yakin bahawa rentetan mewakili nilai angka yang sah. TryParse() ialah kaedah pilihan untuk situasi di mana anda menjangkakan ralat penghuraian atau perlu mengendalikan hasil penukaran secara eksplisit. Keupayaan semakan ralatnya menghapuskan keperluan untuk blok cuba-tangkap dan menyediakan cara yang lebih cekap dan berkesan untuk mengendalikan operasi penghuraian.
Atas ialah kandungan terperinci Parse() vs. TryParse(): Bilakah Anda Harus Menggunakan Setiap Kaedah C#?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!