HALLOWEEN JE TADY: Získej 66 % extra kreditů zdarma při nákupu od 1199 kreditů s promo kódem NEBOJSEIT66. Zjisti více:
NOVINKA: Začni v IT jako webmaster s komplexním akreditovaným online kurzem Tvůrce WWW stránek. Zjisti více:
Avatar
jan.merunka
Člen
Avatar
jan.merunka:21.4.2015 15:39

Ahoj potřeboval bych poradit jak rozdělit String v javě na tokeny pomocí enumu. Níže je kod co zatím mám.
Děkuji za pomoc Jan Merunka

import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;
import java.util.StringTokenizer;
/**
 *
 * @author Jan Merunka
 */

public class Vycisleni{

    public enum Prvky {
    H("H"), He("He"), Li("Li"), Be("Be"),O("O"), Na("Na");

    public String prvek;

    Prvky(String prvek) {
        this.prvek = prvek;
    }
    @Override
    public String toString() {
        return prvek;
    }
}
    public static void main(String[] args) {
//scanner, do kterého se píše text (rovnice)
        Scanner scan = new Scanner(System.in, "UTF-8");

//uvodní text, co napíše program při spuštění
        System.out.println("Napiš rovnici: ve tvaru aPCl3+bH20->cH3PO3+dHCl");

//text se převede do stringu
        String rovnice = scan.nextLine();

       if(rovnice.contains("+")) { //pokud platí tak se spustí celý program

//tokenizer
           StringTokenizer tokenizer = new StringTokenizer(rovnice, prvek); // rozdělí se na tokeny pomocí enumu prvky
           List<String> casti = new ArrayList<String>();

           while(tokenizer.hasMoreTokens()) {
               String token = tokenizer.nextToken();
               casti.add(token);

               System.out.println(token);
               /*
               for (int i = 0;i < token.length(); i++){
                   System.out.println(token.charAt(i));

}
  */
}








       }else{ //pokud ne tak se napíše toto
           System.out.println("Tato chemická rovnice " + rovnice + " není správně napsaná");
       }
    }
}
 
Odpovědět
21.4.2015 15:39
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 1 zpráv z 1.