
Busqueda en arreglo bidimensional
Publicado por Vanessa (1 intervención) el 13/10/2013 23:15:03
Hola, tengo que este código en Java que me pide llenar campos y después busca en numero de inventario.
El problema que tengo es que cuando le doy "buscar" nunca encuentra el número aunque este sí exista!
También quiero comparar la fecha de entrada y de salida y que me diga cuántos días hay entre las 2 fechas pero no sé cómo hacerlo
gracias
import java.awt.event.*;
import javax.swing.*;
public class Reporte_mantenimiento {
static JFrame marco = new JFrame("Reporte de mantenimiento.");
static JPanel panel = new JPanel();
static JButton boton1 = new JButton("Agregar");
static JButton boton2 = new JButton("Buscar");
static JLabel etiqueta1 = new JLabel("No de inventario");
static JLabel etiqueta2 = new JLabel("Descripcion");
static JLabel etiqueta3 = new JLabel("Fecha entrada");
static JLabel etiqueta4 = new JLabel("Fecha salida");
static JLabel etiqueta5 = new JLabel("Observaciones");
static JLabel etiqueta6 = new JLabel("No Invebtario a buscar");
static JTextField JTextInventario= new JTextField(10);
static JTextField JTextDescripcion= new JTextField(10);
static JTextField JTextEntrada= new JTextField(10);
static JTextField JTextSalida= new JTextField(10);
static JTextField JTextObservaciones= new JTextField(20);
static JTextField JTextBuscar= new JTextField(20);
static final int tamano = 6;
static String [][]autos=new String [7][tamano];
static int cont=0;
public static void main(String[] args){
panel.add(etiqueta1);
panel.add(JTextInventario);
panel.add(etiqueta2);
panel.add(JTextDescripcion);
panel.add(etiqueta3);
panel.add(JTextEntrada);
panel.add(etiqueta4);
panel.add(JTextSalida);
panel.add(etiqueta5);
panel.add(JTextObservaciones);
panel.add(boton1);
panel.add(etiqueta6);
panel.add(JTextBuscar);
panel.add(boton2);
marco.add(panel);
boton1.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent m){
boolean bandera1 = false;
if(!JTextInventario.getText().equals("")){
for(int i=0;i<cont;i++){
if(autos[0][i].equals(JTextInventario.getText())){
bandera1 = true;
JOptionPane.showMessageDialog(null, "El número de inventario ya existe, ingrese un número diferente");
break;
}
}
if(bandera1){}
else if(cont<tamano){
autos[0][cont] = JTextInventario.getText();
autos[1][cont] = JTextDescripcion.getText();
autos[2][cont] = JTextEntrada.getText();
autos[3][cont] = JTextSalida.getText();
autos[4][cont] = JTextObservaciones.getText();
cont++;
}else{
JOptionPane.showMessageDialog(null, "Vector Bidimensional LLeno");
}
}else{
JOptionPane.showMessageDialog(null, "Llene los campos requeridos");
}
JTextInventario.setText("");
JTextDescripcion.setText("");
JTextEntrada.setText("");
JTextSalida.setText("");
JTextObservaciones.setText("");
}
});
boton2.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent m){
if(!JTextBuscar.getText().equals("")){
boolean bandera2 =false;
int encontrado=0;
for(int i=0;i<cont;i++){
if(autos[0][i].equals(JTextInventario.getText())){
bandera2 =true;
encontrado = i;
break;
}
}
if(bandera2){
JOptionPane.showMessageDialog(null, "Inventario: "+autos[0][encontrado]);
}else{
JOptionPane.showMessageDialog(null, "No existe el numero de inventaio");
}
}
else{
JOptionPane.showMessageDialog(null, "Digite un numero de inventario a consultar");
}
JTextBuscar.setText("");
}
});
marco.setResizable(false);
marco.setSize(450,200);
marco.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
marco.setLocationRelativeTo(null);
marco.setVisible(true);
}
}
El problema que tengo es que cuando le doy "buscar" nunca encuentra el número aunque este sí exista!
También quiero comparar la fecha de entrada y de salida y que me diga cuántos días hay entre las 2 fechas pero no sé cómo hacerlo
gracias
import java.awt.event.*;
import javax.swing.*;
public class Reporte_mantenimiento {
static JFrame marco = new JFrame("Reporte de mantenimiento.");
static JPanel panel = new JPanel();
static JButton boton1 = new JButton("Agregar");
static JButton boton2 = new JButton("Buscar");
static JLabel etiqueta1 = new JLabel("No de inventario");
static JLabel etiqueta2 = new JLabel("Descripcion");
static JLabel etiqueta3 = new JLabel("Fecha entrada");
static JLabel etiqueta4 = new JLabel("Fecha salida");
static JLabel etiqueta5 = new JLabel("Observaciones");
static JLabel etiqueta6 = new JLabel("No Invebtario a buscar");
static JTextField JTextInventario= new JTextField(10);
static JTextField JTextDescripcion= new JTextField(10);
static JTextField JTextEntrada= new JTextField(10);
static JTextField JTextSalida= new JTextField(10);
static JTextField JTextObservaciones= new JTextField(20);
static JTextField JTextBuscar= new JTextField(20);
static final int tamano = 6;
static String [][]autos=new String [7][tamano];
static int cont=0;
public static void main(String[] args){
panel.add(etiqueta1);
panel.add(JTextInventario);
panel.add(etiqueta2);
panel.add(JTextDescripcion);
panel.add(etiqueta3);
panel.add(JTextEntrada);
panel.add(etiqueta4);
panel.add(JTextSalida);
panel.add(etiqueta5);
panel.add(JTextObservaciones);
panel.add(boton1);
panel.add(etiqueta6);
panel.add(JTextBuscar);
panel.add(boton2);
marco.add(panel);
boton1.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent m){
boolean bandera1 = false;
if(!JTextInventario.getText().equals("")){
for(int i=0;i<cont;i++){
if(autos[0][i].equals(JTextInventario.getText())){
bandera1 = true;
JOptionPane.showMessageDialog(null, "El número de inventario ya existe, ingrese un número diferente");
break;
}
}
if(bandera1){}
else if(cont<tamano){
autos[0][cont] = JTextInventario.getText();
autos[1][cont] = JTextDescripcion.getText();
autos[2][cont] = JTextEntrada.getText();
autos[3][cont] = JTextSalida.getText();
autos[4][cont] = JTextObservaciones.getText();
cont++;
}else{
JOptionPane.showMessageDialog(null, "Vector Bidimensional LLeno");
}
}else{
JOptionPane.showMessageDialog(null, "Llene los campos requeridos");
}
JTextInventario.setText("");
JTextDescripcion.setText("");
JTextEntrada.setText("");
JTextSalida.setText("");
JTextObservaciones.setText("");
}
});
boton2.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent m){
if(!JTextBuscar.getText().equals("")){
boolean bandera2 =false;
int encontrado=0;
for(int i=0;i<cont;i++){
if(autos[0][i].equals(JTextInventario.getText())){
bandera2 =true;
encontrado = i;
break;
}
}
if(bandera2){
JOptionPane.showMessageDialog(null, "Inventario: "+autos[0][encontrado]);
}else{
JOptionPane.showMessageDialog(null, "No existe el numero de inventaio");
}
}
else{
JOptionPane.showMessageDialog(null, "Digite un numero de inventario a consultar");
}
JTextBuscar.setText("");
}
});
marco.setResizable(false);
marco.setSize(450,200);
marco.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
marco.setLocationRelativeTo(null);
marco.setVisible(true);
}
}
Valora esta pregunta


0