[英]Combine two different arrays with diffrent data
我有两个不同的数组,一个是学生的名字,另一个是姓氏
String[] firstname = {"Joe", "bryan", "moe", "zoe"};
String[] Lastname = {"May", "Zoey", "Eden", "Pratt"};
我想知道我将如何继续获得输出,例如打印学生的名字,然后是学生的姓氏
例如Joe May ,Bryan Zoey
我不想使用打印功能手动打印每个名字和姓氏。 我想知道如何一次打印它们
如果您使用的是 Java 流,则可以使用:
String[] fullName = IntStream.range(0, firstname.length)
.mapToObj(i -> String.format("%s %s", firstname[i], lastname[i]))
.toArray(String[]::new);
我基于两个数组具有相同大小的事实。
输出
[Joe May, bryan Zoey, moe Eden, zoe Pratt]
除了@YCF_L 的优雅回答之外,下面还提供了更多方法:
public class Main {
public static void main(String[] args) {
String[] firstNames = { "Joe", "bryan", "moe", "zoe" };
String[] lastNames = { "May", "Zoey", "Eden", "Pratt" };
// First method
StringBuilder sb = new StringBuilder();
for (int i = 0; i < firstNames.length && i < lastNames.length; i++) {
sb.append(firstNames[i]).append(" ").append(lastNames[i]).append(", ");
}
sb.deleteCharAt(sb.length() - 2); // delete the last comma
System.out.println(sb);
// Second method
String fullNames[] = new String[firstNames.length];
for (int i = 0; i < firstNames.length && i < lastNames.length; i++) {
fullNames[i] = firstNames[i] + " " + lastNames[i];
}
String fullNamesStr = String.join(", ", fullNames);
System.out.println(fullNamesStr);
}
}
输出:
Joe May, bryan Zoey, moe Eden, zoe Pratt
Joe May, bryan Zoey, moe Eden, zoe Pratt
在 java 8 中,考虑到数组具有相同大小的条件。
ArrayList<String> al=new ArrayList<>();
for(int i=0;i<firstname.length;i++)
{
al.add(fisrtname[i]+" "+lastname[i]);
}
//now u have a complete arraylist with you with all the full names in it
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.