Associando uma String à uma variavel

Tipo, o que quero é meio complexo.

Seria eu ter um metodo que recebe uma string(que é o nome da variavel) e passa a manipular a variavel em questao

tipo mais ou menos assim

public void main(String[] args){

String nomePessoa;
String x;

nomePessoa=“joaozinho”;
//a variavel x contem o “nome da variavel”
x = “nomePessoa”;

//A variavel “VinculaStirng” recebe de x o nome da variavel
VinculaString v = new VinculaString(x);

//vai imprimir “joaozinho”
System.out.print(VinculaString);

}


agradeco qualquer ajuda

Venom

Vc poderia usar um Map para implementar o q vc ta precisando. Num Map vc adicionar pares de valores chave/valor onde vc associar cada valor a uma chave.

Da uma olhada na documentação em HashMap.

Caso isso não seja suficiente vc vai ter que apelar para a utilização de reflexão.

Fiz duas classes, da uma olhada. Colque ambas no mesmo pacote.

Arquivo Reflexao.java

[code]
import java.lang.reflect.*;

/**
*

  • @author David
    */
    public class Reflexao {

    /** Creates a new instance of Reflexao */
    public Reflexao() {

     bola1 = new Bola( 5 );
     bola2 = new Bola( 15 );
     bola3 = new Bola( 25 );
    

    }

    public void executa() {

     manipulaObjeto( "bola1" );
    

    }

    public void manipulaObjeto( String nomeObjeto ) {

     // obtém os campos declarados
     Field[] f = getClass().getDeclaredFields();
     
     // itera pelos campos
     for ( int i = 0; i < f.length; i++ ) {
         
         // se achar um que bate com o nome fornecido
         if ( f[ i ].getName().equals( nomeObjeto ) ) {
             
             try {
                 
                 // obtem a referencia da bola criada nesse objeto (this)
                 Bola b = ( Bola ) f[ i ].get( this );
                 
                 // altera o peso da bola
                 b.setPeso( 20 );
                 
             } catch ( IllegalAccessException exc) {
             }
             
         }
         
     }
     
     // vai exibir o peso alterado, e não o configurado no construtor
     System.out.println( bola1.getPeso() + "" );
    

    }

    public static void main(String[] args) {

     new Reflexao().executa();
    

    }

    private Bola bola1;
    private Bola bola2;
    private Bola bola3;

}[/code]

Arquivo Bola.java

[code]
/**
*

  • @author David
    */

public class Bola {

/** Creates a new instance of Bola */
public Bola( int peso ) {
    
    setPeso( peso );
    
}

public void setPeso( int peso ) {
    
    this.peso = peso;
    
}

public int getPeso() {
    
    return peso;
    
}

private int peso;

}[/code]

Falow!