我正在从文本框中输入。我已将输入数字从文本框保存到这样的数组:
char[] _array = textBox1.Text.ToCharArray(0, textBox1.Text.Length);
现在我想将数组转换为int数组,因为我想对数组的每个索引执行数学运算。
我如何实现目标? 感谢。
答案 0 :(得分:10)
如果您只想要每个字符的字符代码,可以使用LINQ。
var intArrayOfText = "some text I wrote".ToCharArray().Select(x => (int)x);
或
var intArrayOfText = someTextBox.Text.ToCharArray().Select(x => (int)x);
答案 1 :(得分:6)
如果每个字符都是数字,您可以将其解析为int:
List<int> listOfInt = new List<int>();
_array.ToList().ForEach(v => listOfInt.Add(int.Parse(v.ToString())));
int[] _intArray = listOfInt.ToArray();
字符代码值:
List<int> listOfCharValue = new List<int>();
_array.ToList().ForEach(v => listOfCharValue.Add((int)v));
int[] _charValueArray = listOfCharValue.ToArray();
您需要处理异常。
答案 2 :(得分:1)
假设我在评论中提出的问题属实:
string[] ints = { "1", "2", "3" };
var str = ints.Select(i => int.Parse(i));
但是,只有在您已经验证文本框中的输入是数字时,上述操作才有效。
答案 3 :(得分:1)
我已经解决了我的问题。我使用list来完成任务。
在将每个索引值转换为int后,我将每个数组索引存储在列表的相对索引处。
使用list对我来说似乎更方便。 :)
感谢你们所有人。