Я часто использую массивы в классе и мне нужно отслеживать, какое значение в массиве используется в данный момент. Например, представьте себе систему камер, имеющую массив камер, и мне нужно отслеживать, какая из них активна в данный момент. Я всегда это делал, создавая массив и переменную int с именем cameraIndex или что-то в этом роде. Затем, когда я переключаю значения массива, я меняю значение cameraIndex. Это действительно работает, но я всегда чувствовал, что, возможно, есть лучший способ сделать это. Кажется, нет необходимости создавать дополнительную переменную для отслеживания.
Вот краткий пример:
class Camera{
// Pretend there's camera logic in here.
}
class User{
public setCamera(Camera newCamera){
// Logic for having the user look through a new camera.
}
}
class CameraSystem{
private User user;
private Camera[] cameraList;
private int cameraIndex = 0;
public void goToNextCamera(){
cameraIndex++;
user.setCamera(cameraList[cameraIndex]);
}
}
Подробнее здесь: https://stackoverflow.com/questions/784 ... n-an-array