Questo sito utilizza cookies, anche di terze parti, per mostrare pubblicità e servizi in linea con il tuo account. Leggi l'informativa sui cookies.
Username: Password: oppure
C# / VB.NET - [C#] Ricerca in HashTable
Forum - C# / VB.NET - [C#] Ricerca in HashTable

Avatar
dookie07 (Normal User)
Newbie


Messaggi: 4
Iscritto: 01/06/2009

Segnala al moderatore
Postato alle 9:15
Lunedì, 01/06/2009
Salve a tutti!

Ho un problema con le hashtable. Creo un Hashtable, salvando i nomi di tutti gli utenti e metto uno 0 o un 1 in base se sono connessi o meno. Quando un client si connette a questo mio programma server, dovrò cercare il suo nome in Hashtable e mettere il valore a uno. Ma c'è un modo rapido per fare la ricerca in hashtable?

PM Quote
Avatar
Il Totem (Admin)
Guru^2


Messaggi: 3635
Iscritto: 24/01/2006

Segnala al moderatore
Postato alle 9:45
Lunedì, 01/06/2009
Se l'utente è già presente nell'hashtable, non vedo che problema ci sia:
Codice sorgente - presumibilmente Plain Text

  1. Hashtable("utente") = 1


PM Quote
Avatar
dookie07 (Normal User)
Newbie


Messaggi: 4
Iscritto: 01/06/2009

Segnala al moderatore
Postato alle 11:23
Lunedì, 01/06/2009
Era così semplice? O.o

e invece per fare il contrario? Cioè... dato il valore, dare il nome?

PM Quote
Avatar
lorenzo (Normal User)
Guru


Messaggi: 1178
Iscritto: 15/04/2008

Segnala al moderatore
Postato alle 14:29
Lunedì, 01/06/2009
scusa ma cosa ti serve dato il valore avere il nome? nel tuo caso hai solo 0 o 1, non avrai mai un risultato univoco....

PM Quote
Avatar
dookie07 (Normal User)
Newbie


Messaggi: 4
Iscritto: 01/06/2009

Segnala al moderatore
Postato alle 14:34
Lunedì, 01/06/2009
1 = connesso
0 = disconnesso

Devo sapere chi è connesso e chi so! Sto programmando la parte server della mia tesina che prevede un programma di IM

PM Quote
Avatar
Il Totem (Admin)
Guru^2


Messaggi: 3635
Iscritto: 24/01/2006

Segnala al moderatore
Postato alle 11:18
Martedì, 02/06/2009
Codice sorgente - presumibilmente VB.NET

  1. Dim WhosOnline As New List(Of String)
  2. For Each Name As String In Hashtable.Keys
  3.   If Hashtable(Name) = 1 Then
  4.     WhosOnline.Add(Name)
  5.   End If
  6. Next


PM Quote
Avatar
dookie07 (Normal User)
Newbie


Messaggi: 4
Iscritto: 01/06/2009

Segnala al moderatore
Postato alle 12:14
Martedì, 02/06/2009
Testo quotato

Postato originariamente da Il Totem:

Codice sorgente - presumibilmente VB.NET

  1. Dim WhosOnline As New List(Of String)
  2. For Each Name As String In Hashtable.Keys
  3.   If Hashtable(Name) = 1 Then
  4.     WhosOnline.Add(Name)
  5.   End If
  6. Next




Tradotto in C#?

PM Quote
Avatar
Il Totem (Admin)
Guru^2


Messaggi: 3635
Iscritto: 24/01/2006

Segnala al moderatore
Postato alle 17:16
Mercoledì, 03/06/2009
Codice sorgente - presumibilmente C#

  1. List<string> WhosOnline = new List<string>();
  2.      foreach (string Name in Hashtable.Keys) {
  3.          if (Hashtable(Name) == 1) {
  4.              WhosOnline.Add(Name);
  5.          }
  6.      }


Come dice il regolamento di sezione, esistono i convertitori.

PM Quote