Kezdőoldal » Számítástechnika » Programozás » [Java, NullPointerException]...

[Java, NullPointerException] miert nem jo a kovetkezo kod (Boxing and unboxing) ?

Figyelt kérdés

feladat:

Implement a method for converting a Long value to int (primitive type) according to the following rules:


if the given value is null the method should return the default value for ints;

if the given value is greater than Integer.MAX_VALUE the method should return the max value for ints;

if the given value is lesser than Integer.MIN_VALUE the method should return the min value for ints;

otherwise, the method should return the same value as the passed argument.



import java.util.Scanner;


public class Main {


public static int convert(Long val) {

// write your code here


if( "null".equals(val) ){

return 0;

} else if(val > Integer.MAX_VALUE){

return Integer.MAX_VALUE;

} else if( val < Integer.MIN_VALUE){

return Integer.MIN_VALUE;

}else{

return val.intValue();

}


}


/* Do not change code below */

public static void main(String[] args) {

Scanner scanner = new Scanner(System.in);

String val = scanner.nextLine();

Long longVal = "null".equals(val) ? null : Long.parseLong(val);

System.out.println(convert(longVal));

}

}



<script src="//onlinegdb.com/embed/js/Ay7SQ6G5y?theme=dark"></script>


[link]


[link]



2022. máj. 24. 11:57
 1/8 anonim ***** válasza:
82%
null-al valo egyenloseget nem igy vizsgalunk.
2022. máj. 24. 11:59
Hasznos számodra ez a válasz?
 2/8 anonim ***** válasza:
100%
Tisztában vagy azzal, hogy mi a különbség null és "null" között?
2022. máj. 24. 12:36
Hasznos számodra ez a válasz?
 3/8 A kérdező kommentje:

a null az ertek es a "null" igy String lessz - itt az egyik baj ...


(Y)

2022. máj. 24. 13:10
 4/8 anonim ***** válasza:

Amit itt linkeltél: [link]

Az nálam lefut.

2022. máj. 24. 13:51
Hasznos számodra ez a válasz?
 5/8 anonim ***** válasza:

:)))))

Validációt kihagytad. :D


1000000000000000000000000000000000000000000000000000000000000000000000

Exception in thread "main" java.lang.NumberFormatException: For input string: "1000000000000000000000000000000000000000000000000000000000000000000000"

___ at java.base/java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)

___ at java.base/java.lang.Long.parseLong(Long.java:692)

___ at java.base/java.lang.Long.parseLong(Long.java:817)

___ at Main.main(Main.java:24)



...Program finished with exit code 0

Press ENTER to exit console.

2022. máj. 24. 13:52
Hasznos számodra ez a válasz?
 6/8 A kérdező kommentje:

lehet ilyen validaciot nem kell csinalni, mert van egy alap kod amit ki kell egesziteni.



Ennek nem kene hogy mar mukodjon:

[link]


most nem "null".s2.equals(val) - al hasonlitom ossze. Letrehozok egy ugyan olyan tipusu valtozot aminek az erteke null.


Long s2 = null;

if ( s2.equals(val) ) {

2022. máj. 24. 22:06
 7/8 A kérdező kommentje:

vegul megszuletett


[link]

2022. máj. 24. 22:13
 8/8 anonim ***** válasza:

De most komolyan, mért kellett átírni a sorrendet?

Eddig mindig a null ellenőrzéssel kezdted (bár hibásan)

Majd most ezt hátra raktad és az első 2 if-nél külön vizsgálod, hogy nem null-e.... méééééért?

2022. máj. 28. 00:46
Hasznos számodra ez a válasz?

Kapcsolódó kérdések:





Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!