Java - exception in thread main java.lang.nullpointerexception

 
Vista:
Imágen de perfil de alberto
Val: 6
Ha disminuido su posición en 265 puestos en Java (en relación al último mes)
Gráfica de Java

exception in thread main java.lang.nullpointerexception

Publicado por alberto (4 intervenciones) el 24/06/2020 17:21:24
Buen día comunidad tengo una duda en un código me esta dando un error exception in thread main java.lang.nullpointerexception No se por que este mismo código no me sirve,yo lo utilice para otros métodos que necesitaba pero en eso otros si, me podría indicar que estoy haciendo mal gracias dejo código por favor

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
public class Prueba {
 
    Prueba TZU[] = new Prueba[1];  /*arreglos de objetos*/
    Prueba creacionarticulos[] = new Prueba[1];
 // atributos
    private int id;
    private String tipo_producto;
    private double porcentaje;
    private int codigo_articulo;
    private String nombre_articulo;
    private double valor_articulo;
    private int cantidad_disponibles_articulos;
 
    int contador3 = 0;
    int contador4 = 0;
    int j = 0;
    int m = 0;
    int p = 0;
    int n=0;
 
    public Prueba() {
    }
 
 
 
    public int getId() {
        return id;
    }
 
    //  (GET Y SET)
    public void setId(int id) {
        this.id = id;
    }
 
    public String getTipo_producto() {
        return tipo_producto;
    }
 
    public void setTipo_producto(String tipo_producto) {
        this.tipo_producto = tipo_producto;
    }
 
    public double getPorcentaje() {
        return porcentaje;
    }
 
    public void setPorcentaje(double porcentaje) {
        this.porcentaje = porcentaje;
    }
 
    public int getCodigo_articulo() {
        return codigo_articulo;
    }
 
    public void setCodigo_articulo(int codigo_articulo) {
        this.codigo_articulo = codigo_articulo;
    }
 
    public String getNombre_articulo() {
        return nombre_articulo;
    }
 
    public void setNombre_articulo(String nombre_articulo) {
        this.nombre_articulo = nombre_articulo;
    }
 
    public double getValor_articulo() {
        return valor_articulo;
    }
 
    public void setValor_articulo(double valor_articulo) {
        this.valor_articulo = valor_articulo;
    }
 
    public int getCantidad_disponibles_articulos() {
        return cantidad_disponibles_articulos;
    }
 
    public void setCantidad_disponibles_articulos(int cantidad_disponibles_articulos) {
        this.cantidad_disponibles_articulos = cantidad_disponibles_articulos;
    }
 
 
    public void RegistroProducto() {
 
 
        for (int i = 0; i < TZU.length; i++) {
 
            System.out.println("Ingrese  el Id del producto");
            id = Integer.parseInt(JOptionPane.showInputDialog(null, ""));
            System.out.println("Ingrese el tipo de producto");
            tipo_producto = JOptionPane.showInputDialog("");
            System.out.println("Ingrese el porcentaje");
            porcentaje = Double.parseDouble(JOptionPane.showInputDialog(null, ""));
 
            Prueba informaciónmostrar = new Prueba();
 
            informaciónmostrar.setId(id);
            informaciónmostrar.setTipo_producto(tipo_producto);
            informaciónmostrar.setPorcentaje(porcentaje);
 
            TZU[i] = informaciónmostrar;
 
 
        }
    }
public boolean Creacióndearticulos() {
        for (int i = 0; i < creacionarticulos.length; i++) {
            System.out.println("Ingrese el numero codigo del articulo");
            codigo_articulo = Integer.parseInt(JOptionPane.showInputDialog(null, ""));
            System.out.println("Ingrese el nombre del articulo");
            nombre_articulo = JOptionPane.showInputDialog("");
            System.out.println("Ingrese el valor del articulo");
            valor_articulo = Double.parseDouble(JOptionPane.showInputDialog(null, ""));
            System.out.println("Ingrese cantidad de articulos disponibles en el supermercadoS");
            cantidad_disponibles_articulos = Integer.parseInt(JOptionPane.showInputDialog(null, ""));
            while (j <= contador4) {
            System.out.println("Inicia Validador id");
            int id_producto = Integer.parseInt(JOptionPane.showInputDialog(null, "Ingrese el Id del producto que pernece el articulo"));
            for (int a = 0; a < TZU.length; a++) {
 
                if (id_producto == TZU[i].getId()) {
                    System.out.println(" correcto tuzo" + TZU[i].getId());
                    return true; //Esto finaliza la búsqueda
                }
 
            }
 
            JOptionPane.showMessageDialog(null, "Estimado usuario Id del producto incorrecto"
                    + "", "Failure", JOptionPane.ERROR_MESSAGE);
            contador4 = contador4 + 1;
            j++;
 
        }
 
            Prueba informaciónarticulo = new Prueba();
            informaciónarticulo.setCodigo_articulo(codigo_articulo);
            informaciónarticulo.setNombre_articulo(nombre_articulo);
            informaciónarticulo.setValor_articulo(valor_articulo);
            informaciónarticulo.setCantidad_disponibles_articulos(cantidad_disponibles_articulos);
            creacionarticulos[i] = informaciónarticulo;
 
 
        }
        return false;
 
    }
 
 
 
 public boolean validarcodigoarticulo() {
 
        while (j <= contador3) {
 
            int documentocliente = Integer.parseInt(JOptionPane.showInputDialog(null, ""
                    + " Ingrese el codigo del articulo"));
            for (int i = 0; i < creacionarticulos.length; i++) {
 
//                error en esta línea exception in thread main java.lang.nullpointerexception 173
                if (documentocliente == creacionarticulos[i].getCodigo_articulo() ){
 
                    System.out.println(" correcto tuzo" + creacionarticulos[i].getCodigo_articulo());
                    return true; //Esto finaliza la búsqueda
                }
 
            }
 
            JOptionPane.showMessageDialog(null, "Estimado codigo mal ingresado"
                    + "", "Failure", JOptionPane.ERROR_MESSAGE);
            contador3 = contador3 + 1;
            j++;
 
        }
//         Si bucle for finaliza sin retornar true, es que no hay coincidencia en la cedula
        return false;
 
    }
 
 
}
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Kabuto
Val: 3.428
Oro
Ha mantenido su posición en Java (en relación al último mes)
Gráfica de Java

exception in thread main java.lang.nullpointerexception

Publicado por Kabuto (1379 intervenciones) el 24/06/2020 17:39:21
El array creacionarticulos en ningún momento recibe o instancia un objeto Prueba.
Por eso cuando le pides un getCodigo_articulo() te da error de "puntero nulo", porque no hay ningún objeto instanciado que pueda getear o setear algo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
Imágen de perfil de alberto
Val: 6
Ha disminuido su posición en 265 puestos en Java (en relación al último mes)
Gráfica de Java

exception in thread main java.lang.nullpointerexception

Publicado por alberto (4 intervenciones) el 24/06/2020 20:32:32
Gracias Kabuto que excelente persona eres,tomarte el tiempo de responder,que buen programador eres exitos siempre.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar