[英]C#: How to split multiple strings into 2D array?
我想從用戶輸入創建一個矩陣,其中每一行都是從一串數字除以空格創建的。 (在開始時用戶輸入矩陣的大小)。
示例輸入:
1 4 6 4 進入
9 8 5 2 進入
0 3 6 1 進入
output 將是: array[1, 1] = 1 array[1,2] = 4... array[2,1] = 9 等等。
提前致謝!
簡單的方法是
int
列表並將其添加到List<List<int>>
object。示例:此代碼非常基本,並假設輸入將基於整數和空格。 您應該考慮添加檢查以確保輸入格式正確
List<List<int>> arr = new List<List<int>>();
while (true) {
string line = Console.ReadLine();
if (string.IsNullOrEmpty(line))
break;
arr.Add(line.Split(' ', StringSplitOptions.RemoveEmptyEntries).Select(x => int.Parse(x)).ToList());
}
// input:
1 2 3<enter>
4 5 6<enter>
7 8 9<enter>
<enter>
或者您可以創建一個鋸齒狀數組以通過 indecies 訪問。 以下假設 3 行。
int[][] arr = new int[3][];
int i = 0;
while (true) {
string line = Console.ReadLine();
if (string.IsNullOrEmpty(line))
break;
arr[i++] = line.Split(' ', StringSplitOptions.RemoveEmptyEntries).Select(x => int.Parse(x)).ToArray();
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.