String[] toppings = new String[10];
BigDecimal toppingsPrice = null;
toppings[0] = req.getParameter("extraCheese");
toppings[1] = req.getParameter("moreTomatoes");
toppings[2] = req.getParameter("extraOnions");
// ...
for(int i = 0; i < toppings.length; i++) {
if(toppings[i] != null) {
toppingsPrice.add(new BigDecimal("0.99")); // <-- NPE is caused here.
toppingsPrice = toppingsPrice.setScale(2, BigDecimal.ROUND_HALF_EVEN);
}
}
Ich bin ein NullPointerException
in dem obigen Code bekommen, wenn 0.99
zu toppingsPrice
hinzufügen. Ich arbeite mit Geldwerten, also habe ich BigDecimal
verwendet. Stimmt etwas nicht damit, wie ich den 0.99c-Preis addiere?Nullpointer wenn zu BigDecimal Zugabe
Wo initialisierst du 'toppingsPrice' mit etwas anderem als einem' null'? – Mat
Also was sagt die Stack-Traceback ??? In welcher Zeile scheitern Sie und welches Objekt kann in dieser Zeile null sein? – paulsm4
Welche Linie? Fügen Sie den tatsächlichen Fehler und die Stapelverfolgung hinzu (und geben Sie, wenn möglich, an, wo im Code diese Zeile steht). –