C# 如何获取用户输入并分配给数组
假设用户输入一行“1 2 3 4”,我如何将其分配给数组,使数组[0]的值为1,C# 如何获取用户输入并分配给数组,c#,arrays,matrix,assign,C#,Arrays,Matrix,Assign,假设用户输入一行“1 2 3 4”,我如何将其分配给数组,使数组[0]的值为1,数组[1]的值为2,依此类推?到目前为止,我只在用户在每个值后按enter键时分配值,而不是在值在一行中时分配值,这正是我想要实现的 double[,] array = new double[4,4]; Console.Write("Enter 16 digits: "); for (int i = 0; i < 4; i++) { for (int j = 0; j < 4; j++)
数组[1]
的值为2,依此类推?到目前为止,我只在用户在每个值后按enter键时分配值,而不是在值在一行中时分配值,这正是我想要实现的
double[,] array = new double[4,4];
Console.Write("Enter 16 digits: ");
for (int i = 0; i < 4; i++)
{
for (int j = 0; j < 4; j++)
{
array[i, j] = Convert.ToDouble(Console.ReadLine());
}
}
double[,]数组=新的double[4,4];
控制台。写入(“输入16位:”);
对于(int i=0;i<4;i++)
{
对于(int j=0;j<4;j++)
{
数组[i,j]=Convert.ToDouble(Console.ReadLine());
}
}
您应该添加以下内容
var line = Console.ReadLine();
var lineArray = line.Split(new Char[]{' '});
这将为您提供一个lineArray中单个字符串元素的数组,在[0]处带有“1”,等等。如果您想将其转换为一个double数组,您可以这样做
var arrayOfDouble = lineArray.ToList().ConvertAll(x => Double.Parse(x)).ToArray();
这里有一个解释:
- 这需要一个函数,在这种情况下,在lambda中动态指定 表示法(即x=>Double.Parse(x)位),允许 根据需要随时指定函数。功能 对值x征税,并尝试将该值解析为双精度值。自x以来 来自字符串数组,x的类型为String。呼吁 Parse尝试从传递的字符串x中获取一个Double
- 因为列表对象上有ConvertAll(),所以我首先通过ToList()将数组转换为列表。lambda在list的每个元素上都被调用,因此原始lineArray中的每个字符串都将被传递给Double.Parse,以便转换为Double。将产生一个新的双重列表
- 最后,我将结果的双打列表返回到 通过ToArray()的数组
您应该添加如下内容
var line = Console.ReadLine();
var lineArray = line.Split(new Char[]{' '});
这将为您提供一个lineArray中单个字符串元素的数组,在[0]处带有“1”,等等。如果您想将其转换为一个double数组,您可以这样做
var arrayOfDouble = lineArray.ToList().ConvertAll(x => Double.Parse(x)).ToArray();
这里有一个解释:
- 这需要一个函数,在这种情况下,在lambda中动态指定 表示法(即x=>Double.Parse(x)位),允许 根据需要随时指定函数。功能 对值x征税,并尝试将该值解析为双精度值。自x以来 来自字符串数组,x的类型为String。呼吁 Parse尝试从传递的字符串x中获取一个Double
- 因为列表对象上有ConvertAll(),所以我首先通过ToList()将数组转换为列表。lambda在list的每个元素上都被调用,因此原始lineArray中的每个字符串都将被传递给Double.Parse,以便转换为Double。将产生一个新的双重列表
- 最后,我将结果的双打列表返回到 通过ToArray()的数组
您应该添加如下内容
var line = Console.ReadLine();
var lineArray = line.Split(new Char[]{' '});
这将为您提供一个lineArray中单个字符串元素的数组,在[0]处带有“1”,等等。如果您想将其转换为一个double数组,您可以这样做
var arrayOfDouble = lineArray.ToList().ConvertAll(x => Double.Parse(x)).ToArray();
这里有一个解释:
- 这需要一个函数,在这种情况下,在lambda中动态指定 表示法(即x=>Double.Parse(x)位),允许 根据需要随时指定函数。功能 对值x征税,并尝试将该值解析为双精度值。自x以来 来自字符串数组,x的类型为String。呼吁 Parse尝试从传递的字符串x中获取一个Double
- 因为列表对象上有ConvertAll(),所以我首先通过ToList()将数组转换为列表。lambda在list的每个元素上都被调用,因此原始lineArray中的每个字符串都将被传递给Double.Parse,以便转换为Double。将产生一个新的双重列表
- 最后,我将结果的双打列表返回到 通过ToArray()的数组
您应该添加如下内容
var line = Console.ReadLine();
var lineArray = line.Split(new Char[]{' '});
这将为您提供一个lineArray中单个字符串元素的数组,在[0]处带有“1”,等等。如果您想将其转换为一个double数组,您可以这样做
var arrayOfDouble = lineArray.ToList().ConvertAll(x => Double.Parse(x)).ToArray();
这里有一个解释:
- 这需要一个函数,在这种情况下,在lambda中动态指定 表示法(即x=>Double.Parse(x)位),允许 根据需要随时指定函数。功能 对值x征税,并尝试将该值解析为双精度值。自x以来 来自字符串数组,x的类型为String。呼吁 Parse尝试从传递的字符串x中获取一个Double
- 因为列表对象上有ConvertAll(),所以我首先通过ToList()将数组转换为列表。lambda在list的每个元素上都被调用,因此原始lineArray中的每个字符串都将被传递给Double.Parse,以便转换为Double。将产生一个新的双重列表
- 最后,我是马