在程序中调用数组(java)

时间:2014-11-15 17:22:41

标签: java arrays

我目前正在组建一个基本的世界观众计划。在每个视点,我有4张图片,每张图片彼此成90度。我为每个视点创建了一个照片数组,还有一个String currentPoint,它将保存视点的名称。我认为有一种方法可以取出当前数组的名称并调用它的内容,所以我只需要为左转右转功能编写一组代码,但是我想不出它会是什么。怎么做?

1 个答案:

答案 0 :(得分:0)

假设您的数组array按照[朝北,朝东,朝南,朝西]的顺序排列,并且您有一个索引i,表示索引为当前视图(北为0,东为1,南为2,西为3)。然后到"左转"是减去i模4和'#34;右转"是增加i模4。

采用这种方法,向右转是直截了当的:i = (i + 1) % 4

向左转是一个小问题,因为%实际上被定义为Java中的余数运算符,而不是模数运算符,因此i = (i - 1) % 4将不起作用(它将离开{{1}它应该是i == -1)。相反,您可以写:i == 3

(考虑到这一点,我们可以定义一整套绝对方向常数 - i = (i + 3) % 4为0,NORTH为1,EAST为2,SOUTH为3 - 和相对方向常数 - WEST为0,FRONT为1,RIGHT为2,BACK为3.然后,例如,LEFTWEST == (NORTH + LEFT) % 4。)