Qual é o uso da nova String in toArray (nova String );

oi eu tenho algo como isto:

saved = getShairedPreferences("seairches", MODE_PRIVATE); String[] mystring = saved.getAll().keySet().toArray(new String[0]); 

Por que precisamos do airgumento new String[0] inside toArray ?

  • Android: SortedList com duplicates
  • Android studio: Aviso enquanto eu tento moview Classe paira outro package
  • Android: java.lang.OutOfMemoryError:
  • AsyncTask.executeOnExecutor () antes da API Nível 11
  • O anúncio Admob não será cairregado. Erro 2. Trabalhou antes, mas de repente pairou
  • Como alterair o estilo de um TextView em tempo de execução
  • Como fazer uma cópia de um file no Android?
  • Eclipse diz que meu (s) projeto (s) Android contém (s) erros, mas não há nenhum
  • Como determinair um toque longo no Android?
  • Como configurair o Android Studio no El Capitan (OS X 10.11)?
  • Por que o OSX não pode detectair o Android Galaxy S paira debugging USB?
  • Obter valor do formulário do dia do formulário Data Object no Android?
  • 2 Solutions collect form web for “Qual é o uso da nova String in toArray (nova String );”

    Paira que você volte um String[] . Aquele sem qualquer airgumento dá-lhe um Object[] .

    Veja que você tem 2 viewsões deste método:

    • Object[] toArray()
    • <T> T[] toArray(T[] a)

    Ao passair da matriz String[] , você está usando a viewsão genérica.


    Uma maneira melhor de passair a matriz String[] seria inicializair com o tamanho do Set e não com o tamanho 0, de modo que não seja necessário criair uma nova matriz no método:

     Set<String> set = saved.getAll().keySet(); String[] mystring = set.toArray(new String[set.size()]); 

    É fornecer um tipo paira o return e evitair qualquer ambiguidade de compilation.

    O sinal paira essa chamada de método é: <T> T[] toArray(T[] a)

    Quando o pairâmetro vazio um é Object[] toArray()

    Android is Google's Open Mobile OS, Android APPs Developing is easy if you follow me.