Visualizzazione dei risultati da 1 a 9 su 9

Discussione: [java] StringTokenizer

  1. #1

    [java] StringTokenizer

    ho un metodo in java che dovrebbe dirmi se c'e' il carattere @
    in un oggetto di classe StringTokenizer.
    codice:
    import java.util.*;
    
    public static boolean metodo(StringTokenizer ciao){
    boolean bu=true;
    for(int k=0;k<=ciao.length();k++){
    char carattere=ciao.charAt(k);
    if(carattere=='@'){
    bu=false
    }
    }
    return bu;
    }
    il punto e' che ciao non e' una stringa ma un oggetto di StringTokenizer, quindi ciao.length() e ciao.charAt() non funzionano....

    avete idee su come aggirare il problema?
    oppure sapreste dirmi se ci sono metodi diquesta classe che potrebbero fare al caso mio?
    ho pensato anche che potrei con una conversione esplicita di tipo aggirare il problema ma....
    non so se possa ne come si faccia.

    HELP PLEASE
    Quanti programmatori sono necessari per cambiare una lampadina?
    Nessuno, e' un problema hardware.

  2. #2
    E' proprio necessario che usi StringTokenizer?

    Se si', non ti resta che controllare token per token, sperando che '@' non sia un delimitatore: infatti gli ST di default non restituiscono i delimitatori.
    Folle e' l'uomo che parla alla luna.
    Stolto chi non le presta ascolto.

  3. #3
    la cosa più veloce da fare a mio avviso è convertire il tuo oggetto StringTokenizer in una stringa con il metodo toString() e poi cercare una eventuale @ con indexOf o con il metodo contains
    xxx

  4. #4
    se ti serve solo sapere le @ è presente nella StringTokenizer basta impostare @ come delimitatore e verificare quanti token sono presenti nella stringa. una cosa del genere
    codice:
    StringTokenizer str = new StringTokenizer(stringa,"@");
    int count = str.countTokens();
    se count > 0 significa che il simbolo è presente altrimenti no.
    www.matteosteri.it

  5. #5
    se ti serve solo sapere le @ è presente nella StringTokenizer basta impostare @ come delimitatore e verificare quanti token sono presenti nella stringa. una cosa del genere
    codice:
    StringTokenizer str = new StringTokenizer(stringa,"@");
    int count = str.countTokens();
    se count > 0 significa che il simbolo è presente altrimenti no.
    www.matteosteri.it

  6. #6
    scusate per il doppione
    www.matteosteri.it

  7. #7
    Originariamente inviato da Alethesnake
    la cosa più veloce da fare a mio avviso è convertire il tuo oggetto StringTokenizer in una stringa con il metodo toString() e poi cercare una eventuale @ con indexOf o con il metodo contains
    Ci ho provato anch'io, ma toString() restituisce
    java.util.StringTokenizer@194ca6c
    invece di
    marco@marco.it
    Quanti programmatori sono necessari per cambiare una lampadina?
    Nessuno, e' un problema hardware.

  8. #8
    Utente di HTML.it
    Registrato dal
    Aug 2002
    Messaggi
    8,013
    fai un ciclo while con hasMoreTokens e controlla ogni token con nextToken (che ritorna una stringa, su cui puoi tranquillamente applicare i relativi metodi).

    Per esempio

    codice:
    import java.util.*;
    
    public class stringtokens {
      
      static StringTokenizer st;
      
      public stringtokens(String s, String d) {
        st = new StringTokenizer(s, d);
      }
      
      public static boolean check(String s, String d) {
        return (s.indexOf(d) != -1);
      }
      
      public static void main(String[] args) {
        String t = "ciccio@ciaccio.it;pippo@pappo.it;mimmo#mammo.com;zizu@zaza.it";
        stringtokens test = new stringtokens(t, ";");
        
        while (st.hasMoreElements()) {
          String temp = st.nextToken();
          System.out.println(temp+" continene @? "+check(temp, "@"));      
        }
      }
      
    }
    <´¯)(¯`¤._)(¯`»ANDREA«´¯)(_.¤´¯)(¯`>
    "The answer to your question is: welcome to tomorrow"

  9. #9
    Grazie, avevo risolto allo stesso modo
    Quanti programmatori sono necessari per cambiare una lampadina?
    Nessuno, e' un problema hardware.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.