我经常发现自己在类中使用数组,并且需要跟踪数组中当前正在使用的值.例如,想象一个具有一系列摄像机的摄像机系统,我需要跟踪哪个摄像机当前处于活动状态.我一直这样做的方法是创建数组和一个名为cameraIndex或类似内容的int变量.然后当我切换数组值时,我会更改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]);
}
}