在这个简单的示例中,我想创建一个字符串数组,其中填充每个人在数据库中的第一个和最后一个。我知道我错过了一些非常明显的东西,因为我在下面的循环方法中不断覆盖 i
。第二只眼睛肯定会有帮助。
/**
*
* @return
*/
public String[] buildFullNameContainer(){
List<Person> allPeople = Person.findAllPeople();
String[] peopleContainer = new String[] {""};
String fullName = "";
for (int i = 0; i < peopleContainer.length; i++) {
for (Person person : allPeople) {
fullName = person.getFirstName() + " " + person.getLastName();
peopleContainer[i] = fullName;
}
}
return peopleContainer;
}
最佳答案
您的数组始终只有一个元素 - 您应该将其创建为与列表长度相同的长度。此外,您无缘无故地有两个嵌套循环,而且我认为 fullName
变量没有任何意义。这是我要使用的代码:
String[] peopleContainer = new String[allPeople.size()];
for (int i = 0; i < peopleContainer.length; i++) {
Person person = allPeople.get(i);
peopleContainer[i] = person.getFirstName() + " " + person.getLastName();
}
关于java - 使用数组和列表的正确循环构造,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11040625/