Criando um StringTokenizer para J2ME
Neste artigo será apresentada uma opção à ausência da classe StringTokenizer no J2ME.
Uma classe muito utilizada por desenvolvedores Java
no tratamento de Strings é a StringTokenizer.
Se você já teve algum contato além do "Hello World" com o J2ME é provável que tenha sentido falta dessa classe na hora de tratar suas Strings. Tudo bem, não há porque se desesperar, basta utilizar o método split(String regex) da classe String.
Mas será grande sua decepção ao notar que este método também não está disponível no J2ME.
Não queremos reinventar a roda, mas nesse caso vamos precisar implementar nosso próprio StringTokenizer. Não é uma tarefa traumatizante, porém se você não quer perder algum tempo implementando essa classe, segue uma implementação básica, porém funcional, de uma classe com funções semelhantes às funções mais utilizadas da classe StringTokenizer.
Se você já teve algum contato além do "Hello World" com o J2ME é provável que tenha sentido falta dessa classe na hora de tratar suas Strings. Tudo bem, não há porque se desesperar, basta utilizar o método split(String regex) da classe String.
Mas será grande sua decepção ao notar que este método também não está disponível no J2ME.
Não queremos reinventar a roda, mas nesse caso vamos precisar implementar nosso próprio StringTokenizer. Não é uma tarefa traumatizante, porém se você não quer perder algum tempo implementando essa classe, segue uma implementação básica, porém funcional, de uma classe com funções semelhantes às funções mais utilizadas da classe StringTokenizer.
Cabe ai ressaltar
uma diferença desta implementação para a classe StringTokenizer. A classe
StringTokenizer recebe como parâmetros a String e uma String como delimitador,
enquanto a implementação apresentada recebe a String e um char como
delimitador.
public class Tokenizer {
private String string, temporaria;
private char delimitador;
int posicaoAtual;
public
Tokenizer (String string, char delimitador){
this.string = string;
this.delimitador = delimitador;
this.posicaoAtual = 0;
}
public String nextToken (){
boolean chegou =
false;
temporaria = "";
while (chegou
== false && posicaoAtual < string.length()){
if (string.charAt(posicaoAtual) == delimitador){
chegou = true;
posicaoAtual++;
} else {
temporaria += string.charAt(posicaoAtual);
posicaoAtual++;
}
}
return temporaria;
}
public boolean hasMoreChars (){
if (posicaoAtual <= string.length()-1){
return true;
}
return false;
}
}
Espero
ter ajudado alguns iniciantes no mundo do J2ME
Até a
próxima.
</wordtidy>Artigos relacionados
-
Artigo
-
Artigo
-
Artigo
-
Artigo
-
Vídeo