Как преобразовать массив символов в int? - PullRequest
3 голосов
/ 15 ноября 2011

Я беру ввод из текстового поля. Я сохранил входные цифры из текстового поля в массив, подобный этому:

char[] _array = textBox1.Text.ToCharArray(0, textBox1.Text.Length);

Теперь я хочу преобразовать массив в массив int, потому что я хочу выполнять математические операции с каждым индексом массива.

Как мне достичь цели? Спасибо.

Ответы [ 4 ]

10 голосов
/ 15 ноября 2011

Вы можете сделать это с помощью LINQ, если вам нужен только код символа каждого символа.

var intArrayOfText = "some text I wrote".ToCharArray().Select(x => (int)x);

или

var intArrayOfText = someTextBox.Text.ToCharArray().Select(x => (int)x);
6 голосов
/ 15 ноября 2011

Если каждый символ должен быть цифрой, вы можете разобрать его в 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();

Вам нужно обработать исключения.

1 голос
/ 16 ноября 2011

Я решил свою проблему.Для выполнения задачи я использовал list.

Я сохранял каждый индекс массива в относительном индексе списка после преобразования каждого значения индекса в int.

Использование списка кажется мне более удобным способом.:)

Спасибо всем вам.

1 голос
/ 15 ноября 2011

Если предположить, что я спросил в своем комментарии, верно:

string[] ints = { "1", "2", "3" };

var str = ints.Select(i => int.Parse(i));

Однако вышеприведенное будет работать только в том случае, если вы уже подтвердили, что ваш ввод из текстового поля является числовым.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...