Domanda stupida su count

di panfra il
13 risposte
Ho questa linea di codice che dovrebbe darmi il numero di elementi in una lista:

int L = parolacciaTR[].count;

in risposta mi da un errore dentro le parentesi quadre :

Error 26 Syntax error; value expected

Grazie...

13 Risposte

  • Risposta stupida: errore di sintassi.

    Domanda banale: ma tu, la sintassi del C# te la sei studiata o vai di copia incolla/a tentativi?
  • No ma mi chiedo quale valore si aspetti... per me andava bene così, ma non e' vero.
    cosi ho cercato su internet e count me lo da' su tutto, tranne che sull'array.
    Io ho cambiato un arrayList in un array [] e volevo sapere quanti elementi aveva l'array.
    Mi domandavo solo il perche' e non volevo far mica qualche tronata di testa. infatti ho richiesto e postato "domanda stupida... "
    Grazie.
  • Ma "per te andava bene così" secondo quale criterio? Lo hai studiato su un libro? Lo hai visto scritto da qualche parte?

    O te lo sei inventato?

    E' questo che non si capisce.

    Tu scrivi codice "inventandoti" la sintassi. E ovviamente hai una serie di problemi e di "domande stupide" che non dovresti avere se solo studiassi correttamente la sintassi del linguaggio prima di scrivere codice.

    int L = parolacciaTR.Count();
  • Da cosi' int L = parolacciaTR[].count;
    a cosi parolacciaTR.count() che mi da' non contiene definizione di count
    eppure l'esempio e'

    var totalElements = empty.Count();
  • Count con la C maiuscola ... !
  • Ma Count è con la C maiuscola, ma l'errrore c'è......sia nell'un caso che nell'altro...
    Grazie.
  • No tu hai scritto count in minuscolo e senza parentesi. Se hai ancora problemi posta nuovamente tutto il codice
  • panfra ha scritto:


    Ho questa linea di codice che dovrebbe darmi il numero di elementi in una lista:
    int L = parolacciaTR[].count;
    Innanzitutto parli di una lista, ma in realtà hai detto di avere un array, o meglio di avere una ArrayList (che ti avevo sconsigliato, ma l'hai usata comunque) che poi hai convertito in un array, non si sa perché, e vuoi sapere quanti elementi ci sono dentro.

    In primo luogo, dovresti sapere se stai avendo a che fare con un array o una lista.

    Se si tratta di una lista, supponendo che stia in una variabile di nome myList, scrivi
    int myCount = myList.Count;
    e ottieni il numero di elementi, che finisce dentro la variabile myCount.

    Invece, se hai a che fare con un array, non c'è la proprietà Count bensì la proprietà Length!

    Quindi, se l'array si trova nella variabile myArray, scriverai
    int myCount = myArray.Length;
    In nessun caso serve mettere quelle due parentesi come hai fatto tu, che non servono a nulla, o meglio servirebbero se tu volessi accedere a un elemento specifico della lista, ma come hai notato se le indichi e in mezzo a loro non metti l'indice numerico dell'elemento della lista/array che ti interessa, giustamente ricevi un errore di compilazione.

    In pratica, stai andando totalmente a caso, usando strutture improprie, convertendole in altre strutture e usando le proprietà delle prime, il tutto con una sintassi non corretta e confondendo le maiuscole con le minuscole o mettendo parentesi dove non vanno.
  • Concordo ... infatti gli avevo chiesto di produrre TUTTO il codice per capire effettivamente di cosa si tratta. Un array, una List, altro ...

    Che si vada a caso è evidente, quello che non capisco è se si renda conto che non un metodo per imparare.
  • Xpanfra : ti potrebbe giovare molto leggere qualche libro di programmazione in csharp , ce ne sono anche di gratuiti, ciao
  • In effetti avete ragione ... ho lasciato l'ArrayList e ho scritto :

    parolacciaTR = new class_controlla_parolaccie (Com_Servizio ,Log);

    ArrayList PAR ;
    PAR = parolacciaTR.parolaccia(V_name);

    if ( PAR == null)
    {
    }
    else
    {
    int L = PAR.Count;
    }

    Grazie
  • panfra ha scritto:


    parolacciaTR = new class_controlla_parolaccie (Com_Servizio ,Log);

    ArrayList PAR ;
    PAR = parolacciaTR.parolaccia(V_name);

    if ( PAR == null)
    {
    }
    else
    {
    int L = PAR.Count;
    }
    Capisco che tu non voglia seguire gli standard di codifica, ma almeno formattare il codice con l'apposito tasto quando vai a incollarlo sul forum potresti farlo: questo non è affatto un optional.

    Già si fa fatica a leggerlo così com'è, se poi non è nemmeno indentato bene o formattato, la cosa diventa ancora più difficile, se non impossibile (infatti non riesco assolutamente a comprendere qual è lo scopo del codice che pubblichi, tra "parolacce", maiuscole/minuscole e underscore piazzati casualmente, una faticaccia che non ti dico.
Devi accedere o registrarti per scrivere nel forum
13 risposte