如何在Java中忽略键输入的大小写 1 周,2 日 Questions & Answers 77 我试图检查用户是否键入了y键,但我希望它是小写的。我不知道怎么检查。我正在使用if (e.getKeyCode()==KeyEvent.VK_Y),但是我需要y键是小写的,当它是大写时,它会弄乱我的代码
# 2 楼答案 getKeyCode返回所按下键的代码,而不考虑其意图或修饰符。要查看是否应用了移位修饰符,请尝试对事件使用getModifiers() 请注意,这些关键事件是低级的,因此以更自然的方式理解这些事件将变得更复杂
# 3 楼答案 也许试试类似的东西 KeyEvent.getKeyText(e.getKeyCode()).equalsIgnoreCase("y") 这会将keycode转换为字符串,然后对其进行比较,不区分大小写 或者,如果您只想接受小写,只需equals例如 KeyEvent.getKeyText(e.getKeyCode()).equals("y")
# 4 楼答案 方法getKeyCode()恰好返回ASCII码,常量VK_Y的值是一个整数89(reference)。此值对应于ASCII表中的charY 如果需要小写,请使用对应于y的值,而不是常量KeyEvent.VK_Y。根据ASCII表,整数121对应于chary 所以,你可以这样做: if (e.getKeyCode() == 121) 或: if (e.getKeyCode() == 'y')
# 1 楼答案
# 2 楼答案
getKeyCode
返回所按下键的代码,而不考虑其意图或修饰符。要查看是否应用了移位修饰符,请尝试对事件使用getModifiers()
请注意,这些关键事件是低级的,因此以更自然的方式理解这些事件将变得更复杂
# 3 楼答案
也许试试类似的东西
这会将keycode转换为字符串,然后对其进行比较,不区分大小写
或者,如果您只想接受小写,只需
equals
例如# 4 楼答案
方法
getKeyCode()
恰好返回ASCII码,常量VK_Y
的值是一个整数89(reference)。此值对应于ASCII表中的charY
如果需要小写,请使用对应于y的值,而不是常量
KeyEvent.VK_Y
。根据ASCII表,整数121对应于chary
所以,你可以这样做:
或: