Si je fais
String[] tab = new String[250];
J'ai bien un tableau de 250 chaînes, mais elles sont toutes initialisées à null.
là seule solution si on veut initialiser le tableau avec des chaînes vides au lieu de nulls, c'est une boucle :
for(int i = 0; i < tab.length; i++)
tab[i] = new String();
C'est valable pour tous les types non primitifs.
Pour ce qui est de la syntaxe PHP
tab[] = "bonjour";
Ca n'existe pas car ce qu'on appelle un tableau en PHP, en réalité c'est une structure de type Map et non un simple array.
En java, quand tu n'as pas moyen de savoir combien d'élément devra contenir le tableau et que tu souhaites qu'il adapte sa taille à la demande, l'idéal est d'utiliser un ArrayList.