Précédent   Forum du club des développeurs et IT Pro > Dotnet > Langages > VB.NET
VB.NET Forum d'entraide sur la programmation Visual Basic .NET. Avant de poster -> FAQ VB.NET, Articles VB.NET, Sources VB.NET
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse
 
Outils de la discussion
Publicité
'
Vieux 10/09/2009, 12h08   #1
mastronic
Membre à l'essai
 
Inscription : août 2006
Messages : 60
Détails du profil
Informations forums :
Inscription : août 2006
Messages : 60
Points : 23
Points : 23
Par défaut chercher une valeur dans un tableau ?

Bonjour,

une question de base...
A part d'effectuer une boucle, il y a t'il un moyen simple de chercher une valeur dans un tableau ? Je n'ai pas besoin de récupérer son index..

Merci de votre réponse
mastronic est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/09/2009, 12h18   #2
sphynxounet
Membre éclairé
 
Inscription : décembre 2007
Messages : 435
Détails du profil
Informations personnelles :
Âge : 31
Localisation : France

Informations forums :
Inscription : décembre 2007
Messages : 435
Points : 338
Points : 338
La seule solution est de connaitre son index sinon je vois mal comment tu veux pointer un élément de ton tableau.
sphynxounet est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/09/2009, 12h27   #3
Hinault Romaric
Responsable Actualités

 
Avatar de Hinault Romaric
 
Homme Hinault Romaric
Consultant
Inscription : janvier 2007
Messages : 2 824
Détails du profil
Informations personnelles :
Nom : Homme Hinault Romaric
Localisation : Cameroun

Informations professionnelles :
Activité : Consultant
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : janvier 2007
Messages : 2 824
Points : 37 285
Points : 37 285
jusqu'ici les algorithmes de recherche de je connais utilise une boucle en dehors de la recherche par Dichotomie, mais pour cella le tableau doit être trié.

@++
__________________
Si déboguer est l’art de corriger les bugs, alors programmer est l’art d’en faire
Mon blog Mes articles
En posant correctement votre problème, on trouve la moitié de la solution
Hinault Romaric est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/09/2009, 15h16   #4
mastronic
Membre à l'essai
 
Inscription : août 2006
Messages : 60
Détails du profil
Informations forums :
Inscription : août 2006
Messages : 60
Points : 23
Points : 23
ca m'étonne qu'en .net, il y a pas une fonction qui permet de retourner directement l'informations...

du genre: tableau.exist("value")
return true si value existe dans le tableau,
return false si elle n'existe pas.


ils semblent que l'on peut effectuer des recherches avec un "predicate" .. mais ça semble être lourd. non ?
mastronic est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/09/2009, 21h03   #5
StormimOn
Expert Confirmé Sénior
 
Avatar de StormimOn
 
Homme David
Développeur informatique
Inscription : mai 2005
Messages : 2 593
Détails du profil
Informations personnelles :
Nom : Homme David
Âge : 35
Localisation : France, Sarthe (Pays de la Loire)

Informations professionnelles :
Activité : Développeur informatique
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : mai 2005
Messages : 2 593
Points : 7 713
Points : 7 713
Il y a la méthode Array.Exists pour faire ce que tu veux. Et utiliser prédicat ce n'est pas lourd du tout
__________________
Pas de questions techniques par MP
StormimOn est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/09/2009, 16h39   #6
Sehnsucht
Membre Expert
 
Avatar de Sehnsucht
 
Homme Mickaël
Développeur .NET
Inscription : octobre 2008
Messages : 487
Détails du profil
Informations personnelles :
Nom : Homme Mickaël
Âge : 29
Localisation : France, Lot et Garonne (Aquitaine)

Informations professionnelles :
Activité : Développeur .NET

Informations forums :
Inscription : octobre 2008
Messages : 487
Points : 1 023
Points : 1 023
Sinon on peut utiliser l'extension Contains

Code :
1
2
3
' Exemple
Dim tab As Integer() = New Integer(){1, 2, 3}
Dim test As Boolean = tab.Contains(2)
Sehnsucht est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/01/2013, 15h16   #7
NetLogan
Invité de passage
 
Homme Gaëtan LOISEL
Développeur informatique
Inscription : juillet 2009
Messages : 2
Détails du profil
Informations personnelles :
Nom : Homme Gaëtan LOISEL
Âge : 40
Localisation : France, Bas Rhin (Alsace)

Informations professionnelles :
Activité : Développeur informatique
Secteur : Industrie

Informations forums :
Inscription : juillet 2009
Messages : 2
Points : 2
Points : 2
Par défaut Piste

Bonjour,

Je vous propose :
Code :
1
2
3
4
5
6
7
8
 
PublicSharedFunction InArray(ByVal pValueList AsString, ByVal pValueToFind AsString) AsBoolean
' Renvoie vrai si la valeur trouver existe dans la liste de valeurs
' pValueList est une chaîne de valeurs entières séparées par une virgule
' pValueToFin est une chaîne contenant la valeur à chercher
Return (Array.IndexOf(CType(Split(pValueList, ","), Array), pValueToFind) >= 0)
EndFunction
Espérant vous avoir aidé ou à défaut donné d'autres idées.

Cordialement,
Gaëtan LOISEL
NetLogan est déconnecté   Envoyer un message privé Réponse avec citation 01
Vieux 08/01/2013, 15h42   #8
BenoitM
Expert Confirmé
 
Homme Benoît
Inscription : février 2003
Messages : 1 658
Détails du profil
Informations personnelles :
Nom : Homme Benoît
Âge : 32
Localisation : Belgique

Informations forums :
Inscription : février 2003
Messages : 1 658
Points : 2 783
Points : 2 783
Citation:
Envoyé par mastronic Voir le message
Bonjour,

une question de base...
A part d'effectuer une boucle, il y a t'il un moyen simple de chercher une valeur dans un tableau ? Je n'ai pas besoin de récupérer son index..

Merci de votre réponse
On utilise très peu les tableaux, on préfere utiliser les List<T>
et tu as une multitude de méthodes pratique qui lui est lié.

dont : IndexOf
__________________
Je ne suis qu'un pauvre débutant alors ne frappez pas si mes idées ne sont pas bonnes
BenoitM est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse
Outils de la discussion

Navigation rapide


Fuseau horaire GMT +2. Il est actuellement 05h08.


 
 
 
 
Partenaires

Hébergement Web