Penggunaan cekap C#tuple untuk mengembalikan pelbagai nilai
Dalam bahasa pengaturcaraan, mengembalikan pelbagai nilai dari kaedah adalah masalah biasa, dan C#tidak terkecuali. Berbeza dengan bahasa yang perlu digunakan atau dirujuk, C#menyediakan cara yang lebih mudah untuk menggunakan kumpulan kos untuk mencapai tujuan ini.
c# 7 dalam kumpulan yuan
Dengan pengenalan C# 7, komposisi yuan mempunyai ciri -ciri bahasa yang mewakili koleksi pelbagai jenis nilai. Ini membolehkan penciptaan mengandungi pelbagai pulangan yang boleh mengandungi pelbagai nilai.Sebagai contoh, pertimbangkan kaedah mencari nama, nama tengah dan nama keluarga berdasarkan ID yang diberikan. Dalam C# 7, anda boleh menentukan jenis kembali sebagai kumpulan meta:
<code class="language-csharp">(string first, string middle, string last) LookupName(long id)</code>
Kemudian, kaedah boleh mendapatkan nilai dan mengembalikannya sebagai meta -group:
kembalinya kumpulan yuan yang dikembalikan
<code class="language-csharp">return (first, middle, last);</code>
Kod boleh menggunakan harta item untuk mengakses nilai pulangan:
elemen elemen penamaan
<code class="language-csharp">var names = LookupName(id); WriteLine($"found {names.Item1} {names.Item3}.");</code>
C#juga menyediakan fungsi menamakan unsur -unsur untuk meningkatkan definisi. Ini boleh disiapkan dengan menambahkan nama kepada tanda tangan atau pernyataan pulangan:
ataudekonstruksi
<code class="language-csharp">(string first, string middle, string last) LookupName(long id)</code>
C# 7 juga menyokong dekonstruksi. Ini membolehkan anda dengan mudah mengisytiharkan pembolehubah dengan nama yang sama dengan elemen tuple dan memberikan nilai dalam satu baris:
<code class="language-csharp">return (first: first, middle: middle, last: last);</code>
Untuk lebih banyak contoh dan butiran, sila rujuk pautan yang disediakan. (Peta asal harus disimpan di sini)
Atas ialah kandungan terperinci Bagaimanakah kaedah C# boleh mengembalikan pelbagai nilai dengan berkesan menggunakan tuple?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!