2017-03-13 4 views
0

En Java, j'ai quelque chose comme ceci:entrelacent les deux tableaux de chaînes

String[] firstname = { "name1", "name2", "name3" }; 
String[] lastname = { "lastname1", "lastname2", "lastname3" }; 

et le résultat que j'ai besoin serait quelque chose comme ceci:

String[] newArray = {"name1 lastname1", "name2 lastname2", "name3 lastname3"}; 

combinant un par un nom lastname dans String[] newArray en supposant les longueurs sont les mêmes.

+0

Utilisez-vous Java? –

+0

désolé, oui .... J'ai déjà édité. Merci pour votre réponse ci-dessous. –

Répondre

1

Java 7 et bien plus tôt peut-être simplement utiliser une boucle et itérer sur tous les noms et prénoms:

String[] fullname = new String[firstname.length]; 
for (int i=0; i < firstname.length; ++i) { 
    fullname[i] = firstname[i] + " " + lastname[i]; 
} 
0

Vous pouvez utiliser Java 8 API Stream et indexer les deux tableaux avec un flux d'entiers.

 String[] firstname = { "name1", "name2", "name3" }; 
     String[] lastname = { "lastname1", "lastname2", "lastname3" }; 

     String[] newArray = IntStream.range(0, firstname.length).boxed() 
       .map(i -> firstname[i] + " " + lastname[i]).toArray(String[]::new); 

     System.out.println(Arrays.toString(newArray)); 

On obtient

[nom1 lastname1, name2 lastname2, nom3 lastname3]

Cette réponse suppose que la longueur de lastname est au moins la longueur de firstname, mais OP déjà déclaré que.