Dziwne działanie split

Dziwne działanie split
Patryk27
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: Wrocław
  • Postów: 13042
0

Mam taki kod:

Kopiuj
  Map<Integer,String> Mapa = new HashMap<>();
  Mapa.put(1, "Hello");
  Mapa.put(2, "World");
  String txt = Mapa.toString();
  System.out.print(txt.split(" ").toString());

Wyniki działania:
[Ljava.lang.String;@187aeca
Prawdę mówiąc, nie wiem dlaczego tak się dzieje.
Liczyłem na to, że wyświetli coś typu:

Kopiuj
{1=Hello,
2=World}

Dopisane:

Kopiuj
System.out.print("a-b-c".split("-"));

Zwraca to samo.

Shalom
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: Space: the final frontier
  • Postów: 26433
1
Kopiuj
        Map<Integer, String> mapa = new HashMap<Integer, String>();
        mapa.put(1, "Hello");
        mapa.put(2, "World");
        String txt = mapa.toString();
        String[] splitted = txt.split(" ");
        for (String s : splitted) {
            System.out.println(s);
        }

Wypisywanie tak tablicy po prostu nie wypisuje ci wszystkich elementów. Patrz:

Kopiuj
        Integer[] ala = { 1, 2, 3 };
        System.out.println(ala);
Wibowit
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: XML Hills
0

java.util.Arrays.toString

Tablice nie mają przeciążonych żadnych metod z Object, tzn wszystkie pewnie działają tak jak dla Object.

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.