我有一个基本的ArrayList<Car>,我想用它来做一个String[]。很简单,但是我的字符串不知从哪里得到一个空值,我不理解这个问题。
这是我的功能。

private String[] makeListOfCars(){
        Log.d("1st Car brand ", user.getCars().get(0).getBrand());
        Log.d("2nd Car brand ", user.getCars().get(1).getBrand());
        String result[] = new String[user.getCars().size()]; // Size > 0 because the user have at least one car here
        for(int i = 0 ; i < user.getCars().size() ; i++){
            result[i] += user.getCars().get(i).getBrand() + " " + user.getCars().get(i).getModel();
            Log.d("Result ", result[i]);
        }
        return result;
    }

这是我得到的结果:
03-04 13:49:32.470 27216-27216/com.example.bla.app d/1st汽车品牌:
宝马03-04 13:49:32.470 27216-27216/com.example.bla.app d/2nd car
品牌:沃尔沃03-04 13:49:32.470 27216-27216/com.example.bla.app
D/结果:零宝马335I 03-04 13:49:32.470
27216-27216/com.example.bla.app d/result:无沃尔沃V40
有人能解释一下这个空值是从哪里来的吗?

最佳答案

改变

result[i] += user.getCars().get(i).getBrand() + " " + user.getCars().get(i).getModel();


result[i] = user.getCars().get(i).getBrand() + " " + user.getCars().get(i).getModel();

附加“null”是因为result[i]的初始值为空,当您将null值连接到字符串时,null将成为"null"字符串。

08-26 20:43