Czy prawidłowo jest stosować rzutowanie int do String w ten sposób?

0

Zastanawiam się czy powinno się stosować rzutowanie String w taki sposób?

Jeśli chcemy dodać int do np. listy stringów to musimy wykonać rzutowanie w np. taki sposób:

       ArrayList<String> stringList = new ArrayList<>();

        int someInt = 22;

        stringList.add(String.valueOf(someInt));

a jeśli rzutowanie wykonam poprzez dopisanie do pustego stringa wartości int?

        stringList.add("" + someInt);

Co sądzicie o takim zapisie?

0

Drugi sposób robi to samo gdyż powinna wystąpić automatyczna konwersja ale moim zdaniem lepiej kompilatorowi dokładnie "powiedzieć" co ma zrobić poza tym pierwszy wydaje mi się czytelniejszy. Jeżeli szukasz alternatywy dla

String.valueOf(someInt) 

to someInt.toString()

 robi to samo i tak samo dobrze wygląda w kodzie.
0

Nie wchodzi mi ten przyklad

kAzek napisał(a):
someInt.toString()

tak dziala

Integer.toString(someInt);

dlatego zamiast tych metod

        someString = Integer.toString(someInt);
        someInt = parseInt(someString);

zacząłem używać tych:

        someString = String.valueOf(someInt);
        someInt = Integer.valueOf(someString);

Czy metody valueOf sa gorsze od toString i parseInt?

Nawiązując do pytania głównego trochę inny przykład


	 int i= 0;
         
         tak?
         System.out.println("iterator: " + i);
 
         czy tak lepiej?
         System.out.println("iterator: " + String.valueOf(i));

		
0
TomDom napisał(a):

Nie wchodzi mi ten przyklad

kAzek napisał(a):
someInt.toString()

tak dziala

Integer.toString(someInt);

Nie wchodzi, ponieważ nie da się wykonać toString() na typie prostym int, da się za to na obiekcie klasy Integer.

To zadziała:

Integer someInt = 5000;
someInt.toString();

To nie zadziała:

int someInt = 5000;
someInt.toString();

1 użytkowników online, w tym zalogowanych: 0, gości: 1