Ma question est peut-être assez simple mais impossible de trouver la réponse par moi-même...
J'ai une liste d'objet avec plusieurs propriétés. Je ne sais pas combien j'ai d'objet en tout et le nombre va évoluer. Je souhaite stocker une des propriété dans une list. Pour ça je comptais faire une boucle mais quand j'arrive à un index qui n'existe pas ça plante (logique) et je n'arrive pas à simplement vérifier si l'index renvoi quelque chose ou non. J'ai trouvé pour une list, mais pas pour des objets...
// mon objets Spes
public class Spes
{
public string ID;
public string Joueur;
public string Dribble;
public string Tir;
public string FlottantH;
public string FlottantB;
public string Passe;
public string UneDeux;
public string Tacle;
public string Contre;
public string Interception;
public string Arret;
public string Punch;
}
//Ma tentative de list :
List<string> listeNoms = new List<string>();
int i = 0;
for (i = 0; i < 500; i++)
{
if (Spe[i].Joueur == null)
{
break;
}
listeNoms.Add(Spe[i].Joueur);
}
listeNoms.Sort();
foreach (string nom in listeNoms) { Debug.Log(nom); }
}
Je vous remercie pour vos lumières !
C'est lorsqu'on arrête d'apprendre que l'on commence à vieillir
Pour vérifier si un objet existe, on vérifie s'il vaut null. Toi tu vérifies si la propriété "Joueur" de Spe[i] est null, mais pas si Spe[i] est lui-même null, tu dois donc tester cela :
if(Spe[i] == null)
{
}
Cependant, je ne comprends pas bien l'intérêt de votre code, pour pouvoir vous répondre plus précisément, pouvez vous me dire pourquoi vous voulez stocker une liste de nom ? Deuxièmement, quel est le type exact de "Spe" et son utilité ?
Normalement vous ne devriez pas avoir à utiliser des break pour faire des choses aussi basiques.
J'étais en train de vous répondre quand ça a fait tilt dans mon petit cerveau. J'ai déjà un tableau qui stock l'ensemble des Spes. Comme je suis focaliser sur le fait que j'utilise des objets et que je manipule pas encore très bien tout ça j'ai oublié que c'était un tableau ^^'
Du coup un simple i < Spe.Length et on est bon. Sorry pour le dérangement...
Pour tenter de répondre à vos question, Spe est issue une base de données que je récupère formaté en json. Ce qui donne un truc comme ça :
Avec un petit code je redistribue le tout dans un tableau : Spes[] Spe = JsonHelperPlayers.FromJson<Spes>(ListeSpes);
Et ensuite j'accède à la donnée que je veux avec l'index du tableau. Par exemple Spe[0].Joueur me donnera "Tsubasa".
J'espère que c'est plus clair. Merci à vous
C'est lorsqu'on arrête d'apprendre que l'on commence à vieillir
Vérifier si un objet existe en c#
× Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
× Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.