Macro de Substituição

2 respostas
ellcyo

Gostaria de saber como fazer Macro de Substituição em Java como em Clipper?

Por Exemplo
String a = “Base”

String cQuestao = “a.equals(‘Base’) ? 10 : 20”;

int nResultado = Macro(cQuestao);

System.out.println( nResultado );

Print: >>>>>>> 10

Estou precisando urgente dessa rotina

A Macro de Substituição interpreta o valor de uma variavel e não simplesmente tráz o que nela está alocado.

ME AJUDEM ---- POR FAVOR!!!

Grato…

2 Respostas

1112

Isso não existe built-in na linguagem. Dependendo de sua necessidade, dá pra contornar usando Reflection. Acho que usando os recentes recursos de compilação, poderia ser possível fazer algo do tipo, mas não tenho certeza.

L

Você pode usar um mecanismo de script para isso.

No Java 6, isso já é nativo (http://www.ociweb.com/jnb/jnbFeb2006.html). Se você precisar usar uma versão anterior, dá uma olhada no Bean Scripting Framework do Apache (http://jakarta.apache.org/bsf).

Basicamente, você tem que disponibilizar as variáveis que você deseja para o “engine” com chamadas ao método put e depois chamar o método eval para receber o resultado da expressão, calculada com a substituição dos valores das variáveis, igual ao Clipper.

Criado 26 de janeiro de 2007
Ultima resposta 28 de jan. de 2007
Respostas 2
Participantes 3