Tableau de chaînes de tableau Int
Je suis en train d'essayer d'obtenir une chaîne de caractères à partir de la console et de mettre tous les éléments dans un tableau int.
Elle lève une erreur que mon entrée était dans un mauvais format. Je suis en train d'essayer avec "1 1 3 1 2 2 0 0" et j'ai besoin de ceux que int valeurs et, plus tard, d'effectuer certains calculs avec eux.
Voici ma tentative:
class Program
{
static void Main()
{
string first = Console.ReadLine();
string[] First = new string[first.Length];
for (int i = 0; i < first.Length; i++)
{
First[i] += first[i];
}
int[] Arr = new int[First.Length];//int array for string console values
for (int i = 0; i < First.Length; i++)//goes true all elements and converts them into Int32
{
Arr[i] = Convert.ToInt32(First[i].ToString());
}
for (int i = 0; i < Arr.Length; i++)//print array to see what happened
{
Console.WriteLine(Arr[i]);
}
}
}
Vous devez vous connecter pour publier un commentaire.
Ici, vous allez:
Vous devez utiliser Chaîne de caractères.Split Méthode pour diviser votre chaîne avec un espace
' '
dans un tableau de chaînes de caractères et ensuite de les convertir chaque élément entier. Vous pouvez effectuer une itération de tableau de chaîne à l'aide de Système.Linq de manière efficaceDÉMO
essayer cette
Démo
Essayez de la remplacer par ceci:
Vous n'êtes pas le fractionnement de la chaîne à l'aide de l'espace de délimiteur.
Tu ne peux pas essayer avec "1 1 3 1 2 2 0 0", parce qu'il est en train d'essayer d'analyser les espaces entre les chiffres. Si vous voulez que votre programme fonctionne, vous devez faire de votre chaîne d'entrée comme ça: "11312200" ou vous pouvez faire un char de tableau, ou juste un seul char si vous n'avez pas plus d'un séparateur permet d'affecter des et puis .diviser la chaîne en passant par le séparateur, comme ça:
String[]
variable dans la deuxième ligne.Vous pouvez le faire avec une simple méthode d'extension:
À l'aide de:
Code:
Si vous ne voulez pas d'obtenir une exception, vous pouvez utiliser cette.
Il retourne
new int[] {0}
quand lancer une exception.À l'aide de:
Code: