Atualizar String. URGENTE!

Pessoal,

static String FILTRO = "*"; //Filtragem a ser usada nas consultas
static String TABELA = " CLIENTES"; //Tabela que será consultada
static String REFINAMENTO = ""; //O refinamento dos registros "where"
static String ORDEM = " order by NOME"; //Ordenação por       determinado campo
static String CONSULTA = "select "+FILTRO+" from"+TABELA+REFINAMENTO+ORDEM;

Como eu faço pra, toda vez que uma das 4 primeiras Strings forem atualizadas, a última(que é composta pelas 4) tambem ser atualizada?

Valeu!

F. Lemos

bom, se eu entendi a sua pergunta, é só tirar o static da última String

Strings sao imutiveis… Depois de criadas “baubau”

Vc soh conseguirá atualizar o valor da mesma fazendo ela receber os outros valores novamente:

[code]static String FILTRO = “*”; //Filtragem a ser usada nas consultas
static String TABELA = " CLIENTES"; //Tabela que será consultada
static String REFINAMENTO = “”; //O refinamento dos registros “where”
static String ORDEM = " order by NOME"; //Ordenação por determinado campo
static String CONSULTA = “select “+FILTRO+” from”+TABELA+REFINAMENTO+ORDEM;

System.out.println(CONSULTA); //select * from CLIENTES order by NOME
TABELA = “CIDADE”;
System.out.println(CONSULTA); //select * from CLIENTES order by NOME
CONSULTA = “select “+FILTRO+” from”+TABELA+REFINAMENTO+ORDEM;
System.out.println(CONSULTA); //select * from CIDADE order by NOME[/code]

Nao acredito…

Se no CLIPPER tem uma funcção lá (acho que é um macro) que voce faz ela se atualizar em CONSULTA toda vez que receber um novo valor, como que o Java nao tem?

Como eu lhe disse, Strings são imutaveis!

Pq vc nao faz uma Classe assim:

[code]public class MontaConsulta{
public static String FILTRO = “*”;
public static String TABELA = " CLIENTES";
public static String REFINAMENTO = “”;“where”
public static String ORDEM = " order by NOME";

 public static String getConsulta(){
         return "select "+FILTRO+" from"+TABELA+REFINAMENTO+ORDEM; 
  }

}[/code]

[quote=tyrael]Nao acredito…

Se no CLIPPER tem uma funcção lá (acho que é um macro) que voce faz ela se atualizar em CONSULTA toda vez que receber um novo valor, como que o Java nao tem?[/quote]

Exatamente. Se tem uma funcao ou macro que faz isso, basta voce fazer a mesma coisa da forma que o aborges mostrou, criando um metodo getConsulta() por exemplo, que retorna os dados atualizados.

De outra forma seria como se a string tivesse uma parte contendo dados e outra parte sendo um ponteiro para outra string. Meio estranho. :smiley:

Marcio Kuchma

E para quê essa stringficação toda?As consultas são pequenas?Se é necessário sincronismo,use um StringBuffer,se não é,use um StringBuilder.Aí é só ir dando um append para adicionar mais dados,além de deixar sua heap feliz da vida. :wink: