我下面的教程和我遇到這些指令:Java map.get(map.put(String,boolean)),它的含義是什麼?
public class WorldController {
enum Keys {
LEFT,
RIGHT,
JUMP,
FIRE
}
private World world;
static Map<Keys, Boolean> keys = new HashMap<Keys, Boolean>();
static {
keys.put(Keys.LEFT, false);
keys.put(Keys.RIGHT, false);
keys.put(Keys.JUMP, false);
keys.put(Keys.FIRE, false);
};
public WorldController(World world) {
this.world = world;
}
// ** Key presses and touches **************** //
public void leftPressed() {
keys.get(keys.put(Keys.LEFT, true));
}
public void rightPressed() {
keys.get(keys.put(Keys.RIGHT, true));
}
public void jumpPressed() {
keys.get(keys.put(Keys.JUMP, true));
}
public void firePressed() {
keys.get(keys.put(Keys.FIRE, false));
}
public void leftReleased() {
keys.get(keys.put(Keys.LEFT, false));
}
public void rightReleased() {
keys.get(keys.put(Keys.RIGHT, false));
}
public void jumpReleased() {
keys.get(keys.put(Keys.JUMP, false));
}
public void fireReleased() {
keys.get(keys.put(Keys.FIRE, false));
}
}
正如我所看到的方法leftPressed()
,rightPressed()
,等返回任何結果。爲什麼它放置並立即獲得價值(沒有返回它)有什麼特別的理由?
不,這不會特別做任何事情。 –
你的函數的類型是'void'你期望它返回什麼 – meda
我想了解爲什麼那個代碼的作者寫了這些指令,我什麼都不需要 – Massimo