0

我遇到了这段代码:

    private boolean right = true;
    public void keyPressed(KeyEvent e) {

                    int key = e.getKeyCode();

                    if ((key == KeyEvent.VK_LEFT) && (!right)) {
                        left = true;
                        up = false;
                        down = false;
                    }

    }

据我了解,名为 getKeyCode 的 getter 方法以整数形式返回一个键。程序员是否必须了解 KeyEvent.VK_LEFT 的实际数值?或者我应该把它当作一个黑匣子而不关心和担心它是如何实现的而只是使用它?

显然,在查看 Java API 之后,与 VK_LEFT 关联的值是 37。

4

2 回答 2

3

关于这些常量的要点是您不必知道实际的数值。您可以使用 a 轻松获得它,println但您不应该这样做(您不能确保该值在未来的版本中不会改变)。

将它们视为黑匣子。

于 2012-12-30T17:02:51.567 回答
1

永远不要担心任何键的关联值。只需使用KeyEvent类静态变量。

 public static final int VK_LEFT = 0x25;
于 2012-12-30T17:06:56.893 回答