c#中如何给数组初始化
时间: 2023-07-27 08:24:50 浏览: 103
在 C# 中,可以使用以下两种方式给数组初始化:
1. 使用数组初始化器:
```
int[] arr = {1, 2, 3, 4, 5};
```
2. 使用 new 关键字和数组大小:
```
int[] arr = new int[5] {1, 2, 3, 4, 5};
```
其中,第一个例子创建了一个包含 5 个整数的数组,并将其初始化为 1、2、3、4、5。第二个例子也创建了一个包含 5 个整数的数组,但是使用了 new 关键字并指定了数组大小,然后使用大括号初始化数组元素。
相关问题
c# 结构体数组初始化
在 C# 中,结构体数组的初始化可以通过几种方式进行。首先,你可以创建一个静态大小的数组,并直接为其元素赋值:
```csharp
MyStruct[] myArray = new MyStruct[5] { value1, value2, value3, value4, value5 };
```
这里,`MyStruct` 是你要使用的结构类型,`value1` 到 `value5` 是对应的初始值。
如果你不确定需要多少元素,可以使用动态数组(Array 或 List<T>),然后逐个添加元素:
```csharp
List<MyStruct> myDynamicArray = new List<MyStruct>();
myDynamicArray.Add(value1);
myDynamicArray.Add(value2); // 等等...
```
另外,如果结构体有默认构造函数,也可以使用 LINQ 的 `Enumerable.Range` 或 `Enumerable.Repeat` 来生成并初始化数组:
```csharp
int size = 10;
MyStruct[] arrayWithDefaultValues = Enumerable.Repeat(default(MyStruct), size).ToArray();
```
c# byte数组初始化
在 C# 中,byte 数组是一种基本数据结构,用于存储字节级别的数据。初始化 byte 数组有多种方式:
1. **空数组**:
```csharp
byte[] byteArray = new byte[0]; // 创建一个长度为0的空字节数组
```
2. **指定长度并全部填充默认值**:
```csharp
byte[] byteArray = new byte[5]; // 创建一个长度为5的字节数组,所有元素初始值为0
```
3. **使用数组初始化器**:
```csharp
byte[] byteArray = { 1, 2, 3, 4, 5 }; // 创建一个长度为5的字节数组,元素分别为1, 2, 3, 4, 5
```
4. **循环初始化**:
```csharp
int value = 6;
byte[] byteArray = new byte[value];
for (int i = 0; i < byteArray.Length; i++)
byteArray[i] = (byte)value;
```
5. **从其他类型转换**:
```csharp
string str = "Hello";
byte[] byteArray = Encoding.UTF8.GetBytes(str); // 使用UTF8编码将字符串转换成字节数组
```
阅读全文