Saya perlu mendeklarasikan array string kosong dan saya menggunakan kode ini
string[] arr = new String[0]();
Tapi saya mendapatkan kesalahan "nama metode yang diharapkan".
Apa yang salah?
Saya perlu mendeklarasikan array string kosong dan saya menggunakan kode ini
string[] arr = new String[0]();
Tapi saya mendapatkan kesalahan "nama metode yang diharapkan".
Apa yang salah?
Jawaban:
Coba ini
string[] arr = new string[] {};
c# Array.Empty<string>()
Sintaks Anda salah:
string[] arr = new string[]{};
atau
string[] arr = new string[0];
Jika Anda menggunakan .net 4.6, mereka memiliki beberapa sintaks baru yang dapat Anda gunakan:
using System; // To pick up definition of the Array class.
var myArray = Array.Empty<string>();
Konstruktor array berbeda. Berikut ini beberapa cara untuk membuat array string kosong:
var arr = new string[0];
var arr = new string[]{};
var arr = Enumerable.Empty<string>().ToArray()
(maaf, di ponsel)
Hal-hal keriting kadang-kadang sulit diingat, itu sebabnya ada dokumentasi yang sangat baik :
// Declare a single-dimensional array
int[] array1 = new int[5];
int
dengan string
jika dia suka.
Sintaks Anda tidak valid.
string[] arr = new string[5];
Itu akan membuat arr
, array string yang dirujuk, di mana semua elemen array ini berada null
. (Karena string adalah tipe referensi )
Array ini berisi elemen dari arr[0]
hingga arr[4]
. The new
operator yang digunakan untuk membuat array dan menginisialisasi elemen array ke nilai standar. Dalam contoh ini, semua elemen array diinisialisasi ke null
.
Jika Anda harus membuat array kosong, Anda dapat melakukan ini:
string[] arr = new string[0];
Jika Anda tidak tahu tentang ukuran maka Anda juga dapat menggunakan List<string>
juga seperti
var valStrings = new List<string>();
// do stuff...
string[] arrStrings = valStrings.ToArray();
Berikut ini akan berfungsi dengan baik.
string[] arr = new string[] {""};