Buenas , siento poner una duda tan de novato en este subforo donde sabeis demasiado
pero bueno aver si me podeis dar una ayudita xD .
He hecho el siguiente programita para pasar números decimales a binario ; bien , ejecuto , introduzco el número en decimal , pulso mi boton , y se pone en binario , perfecto , pero pulso en mi Boton AC , introduzo el nuevo numero a convertir y me sale como resultado el numero convertido , y a continuacion el que puse antes y no se porque xD ; os dejo mi codigo a continuacion :
import java.awt.Container;
import java.awt.FlowLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JTextField;
public class Ventana extends JFrame{
private static final long serialVersionUID = 1L;
private JTextField texto;
private JButton ac;
private JButton bit;
private Integer decimal;
public Ventana(String s){
Container c = getContentPane();
setTitle("Ventana");
c.setLayout(new FlowLayout());
setSize(200, 100);
setLocation(300, 300);
texto = new JTextField(12);
ac = new JButton("AC");
bit = new JButton("Binario");
ac.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent ev)
{
texto.setText("");
}
});
bit.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e) {
public void actionPerformed(ActionEvent e) {
decimal = Metodos.stringInteger(texto.getText());
texto.setText(Metodos.toString(Metodos.aBinario(decimal)));
}
}
});
c.add(texto);
c.add(ac);
c.add(bit);
setDefaultCloseOperation(EXIT_ON_CLOSE);
setVisible(true);
}
}
public class Metodos {
private static Vector<Integer> resultado = new Vector<Integer>();
public static Integer stringInteger(String s){
Integer res = Integer.valueOf(s);
return res;
}
public static Vector<Integer> aBinario(Integer a){
int u = a;
int v = 2;
while(u >= v){
resultado.add(u%v);
u = (Integer)u/v;
}
resultado.add(u%v);
return resultado;
}
public static String toString(Vector<Integer> v){
String res = "";
for(int i=0;i<resultado.size();i++){
res = resultado.get(i)+res;
}
return res;
}
}
public class Test{
public static void main(String args[]) {
new Ventana("Ventana");
}
}