Olá galera… tenho uma dúvida… estou aki com o meu programa que lê uma string… verifico se o radical dessa string já existem em uma lista (axo q deveria ser uma lista de uma lista - mas axo q isso não existem neh? - então está sendo uma ArrayList) Bom… seguindo, c o radical não existe, tenho que criar uma nova posição e inserir o radical e a palavra em seguida. Se já existem tenho q inserir a palavra na lista dakele radical.
Exemplo, a palavra maravilhado, maravilhoso e fortemente. Pego o radical maravilha da primeira palavra q entra maravilhado, retiro seu radical - maravilha, existem alguma string parecida? não, então insiro esse radical - maravilha apontando pra palavra maravilhado. Pego a segunda string maravilhoso, seu radical maravilha, já existem um radical maravilha? sim… então nakela lista eu insiro maravilhoso. Pego a palavra fortemente, radical - forte, já existe radical forte? não, então… insiro ele numa nova posição apontando pra palavra fortemente.
Deu pra entender galera?
O problema é o seguinte… to usando set e get, aí fiquei na dúvida c to fazendo certo ou não.
–> Esse é meu código q chama a classe Cluster
[code]if(novoCluster.isNewRepresentative(key2)) //se não existir um cluster com radical
{
novoCluster.setRadical(key2); //seto o método setRadical com o nome radical
/*Cluster teste = new Cluster();
String pal = teste.getRadical();
System.out.println("radical" + pal);*/
novoCluster.setPalavras(new ArrayList<String>()); //seto o método setPalavras com a palavra
ArrayList<String> clusteres = new ArrayList<String>(); //declaro e inicializo um vetor chamado clusteres
clusteres.add(key2); //e add a palavra que está no novoCluster
}else//senão - se o radical já existir
{
/*Cluster teste = new Cluster();
List<String> pal = teste.getPalavras();
System.out.println("Get" + pal);*/
Cluster clusterDoRadicalDesejado = new Cluster(); //declaro uma variável da classe Cluster
List<String> palavrasDoCluster = clusterDoRadicalDesejado.getPalavras(); //declaro e inicialiço palavrasDoCluster com o método getPalavras do Cluster
palavrasDoCluster.add(key2); // seto a palavra nova como sendo key2 - palavra do texto
clusterDoRadicalDesejado.setPalavras(palavrasDoCluster);
}[/code]
–> Essa é minha classe Cluster
[code]package histograma;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
public class Cluster {
private String radical;
private List palavras;
private String palavraRepresentante;
public String getPalavraRepresentante() {
return palavraRepresentante;
}
public void setPalavraRepresentante(String palavraRepresentante) {
this.palavraRepresentante = palavraRepresentante;
}
public String getRadical() {
return radical;
}
public void setRadical(String radical) {
this.radical = radical;
}
public List<String> getPalavras() {
return palavras;
}
public void setPalavras(List<String> palavras) {
this.palavras = palavras;
}
public boolean isNewRepresentative(String word) { // novo representante
/*verifica se ele é um novo representante ou se já existe um
* */
boolean isRepresentative = false;
//System.out.println(word);
//System.out.println(palavras);
List<String> lista = new ArrayList<String>();
System.out.println(word + "1");
//System.out.println("Get" + );
Iterator<String> it = lista.iterator();
while(it.hasNext()){
if(it.equals(word))
isRepresentative=false;
isRepresentative=true;
}
return isRepresentative;
}
}[/code]
Desde já, Valew!!!
