Rumah >pembangunan bahagian belakang >C++ >Casting Langsung vs `As` Operator di C#: Bilakah saya harus menggunakan yang mana?
c# jenis penukaran: penukaran langsung dan
dalam perbandingan -phing as
Dalam pengaturcaraan C#, penukaran jenis adalah operasi utama yang menukarkan objek dari satu jenis ke yang lain. Walau bagaimanapun, C# menawarkan pelbagai jenis kaedah penukaran, termasuk penukaran langsung dan
as
penukaran langsung (Kaedah 1)
secara langsung menukar tatabahasa menggunakan kurungan untuk secara eksplisit menukar objek ke jenis sasaran tertentu. Contohnya:
tidak normal.
<code class="language-csharp">string s = (string)o;</code>
InvalidCastException
. Tingkah laku ini amat berguna apabila ia dirawat dengan jenis vakum (seperti integer atau nombor titik terapung). Tatabahasa:
as
pilihan lain:
as
null
Walaupun bukan kaedah penukaran jenis dalam erti kata yang ketat, kaedah
<code class="language-csharp">string s = o as string;</code>
Perbandingan dan Cadangan ToString()
ToString()
Penukaran langsung adalah mudah dan cekap, tetapi jika penukaran tidak sah, ia boleh menyebabkan kesilapan semasa operasi.
<code class="language-csharp">string s = o.ToString();</code>Bukan kaedah penukaran jenis, ia hanya boleh digunakan apabila borang diperlukan.
Cadangan:
Untuk kebanyakan penukaran, gunakan penukaran langsung (Kaedah 1) kerana ia adalah mudah dan cekap.
as
Apabila memproses jenis berangka yang mungkin mengandungi nilai kosong, gunakan pengendali ToString()
(Kaedah 2).
Gunakan (kaedah 3) untuk mendapatkan perwakilan rentetan objek, tanpa mengira jenisnya.
Pilih kaedah penukaran jenis yang sesuai mengikut keperluan khusus, yang dapat memastikan keteguhan dan kecekapan kod.Atas ialah kandungan terperinci Casting Langsung vs `As` Operator di C#: Bilakah saya harus menggunakan yang mana?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!