后递增运算符和数组分配

时间:2018-09-06 13:34:27

标签: java arrays class

这是下面的代码:

import java.util.ArrayList;
import java.util.List;

public class TestA {
    public static void main(String[] args) {
        List<String> list = new ArrayList<String>();
        list.add("Apple");
        list.add("Orange");
        list.add("Banana");
        list.forEach(
                (name) -> {
                    System.out.println(name);
                }
        );
    }
}

我想知道public class Country{ private String name; private City [] cities; private int index =0; public Country (String n, int nrc){ // nrc as in number of cities name = n; cities = new City[nrc]; } public boolean exists (City str){ for(int i =0; i>index;i++){ if(cities[i].equals(str)){ return true; } } return false; } public void addCity (City str){ if(str == null){ System.out.print("City not initialized!"); } if(exists(str)){ System.out.print("City exists!"); } if(cities.length == index){ System.out.print("Not enough space in array!"); } cities[index++] = str; } } 应该做什么。有人可以帮忙吗?

4 个答案:

答案 0 :(得分:3)

它将城市添加到城市数组中的当前索引位置,并增加索引位置。

答案 1 :(得分:2)

不清楚是哪一部分使您感到困惑,但这等效于此

cities[index] = str;
index = index + 1;

将字符串存储在数组cities中位置index处,并将位置index向前移动以进行下一次插入

答案 2 :(得分:1)

每次调用方法addCity()时,变量索引每次都会增加1。由于城市是一个数组,因此我们可以将变量添加到数组的元素空间中,而无需每次都指定特定位置。

因此,例如,如果您要添加城市多伦多,例如,它将进入城市[0],那么下次您要添加另一个城市时,下一个城市将自动进入城市[1],等等。

答案 3 :(得分:0)

让你说你有

String [] cities = {"Paris","Cairo", "Addis Ababa"}

范围索引将为0 upto cities.length-1 使用此索引值从数组中获取元素或将元素添加/设置到数组中,以便 要获取元素"cairo",我们使用

String str = cities[1]; // we got element "cairo"

设置元素"Paris"

cities[0] = "London";

所以在您的情况下:

cities[index++] = str;

正在将元素str添加到cities处的数组index=index