( hrgy84 | 2012. 03. 25., v – 23:18 )

Pasztalj teljes kodokat, ez igy egyreszt hulyeseg, a konstruktorban semmi keresnivaloja, masreszt amit mondasz, az sehogy nem jon ki. Osszedobtam neked egy (sikeres) JUnit tesztet, hogy ertsd, hogyan mukodik a parseInt:


import static org.junit.Assert.assertEquals;
import static org.junit.Assert.fail;
import org.junit.Test;

/**
 *
 * @author hron
 */
public class IntegerTest {
    
    private int expected = 42;
    private String subject = " 42";
    
    
    @Test
    public void testStringParseInt() {
        try {
            assertEquals(expected, Integer.parseInt(subject));
            // A szokoz miatt itt NFE -nek kell jonnie...
            fail("NumberFormatException expected");
        } catch(NumberFormatException ex) {
            // Pass
        }
    }
    
    @Test
    public void testStringParseIntAfterTrim() {
        try {
            // Itt pedig nem szabad NFE-nek jonnie, es 42-t kell kapnunk
            assertEquals(expected, Integer.parseInt(subject.trim()));
        } catch(NumberFormatException ex) {
            fail("NumberFormatException happened: " + ex.getLocalizedMessage());
        }
    }
}

Tehat amit csinalsz, annak jonak kene lennie, a fenti teszt alapjan. Biztos, hogy az Integer.parseInt nem hibazik. Az ertekek rosszak, amiket hasznalsz. Tehat kellene a valodi kod, nem ez a pszeudo kod.

--

Ki oda vagyik, hol szall a galamb, elszalasztja a kincset itt alant. | Gentoo Portal