如何在使用Java Robot时始终释放shift键?

如何在使用Java Robot时始终释放shift键?,java,Java,我使用Java中的Robot来做一些输入,但是如果我输入的太快,shift键就不会释放。我怎样才能保证它的发布是一致的 我试过使用睡眠功能。 我试过多次释放 公共类输入{ publicstaticvoidmain(字符串[]args)抛出AWTException、interruptedeexception{ 机器人=新机器人(); while(true){ 扫描仪=新的扫描仪(System.in); 字符串输入=scanner.nextLine(); 字符位置=输入字符(0); int asci

我使用Java中的Robot来做一些输入,但是如果我输入的太快,shift键就不会释放。我怎样才能保证它的发布是一致的

我试过使用睡眠功能。 我试过多次释放

公共类输入{
publicstaticvoidmain(字符串[]args)抛出AWTException、interruptedeexception{
机器人=新机器人();
while(true){
扫描仪=新的扫描仪(System.in);
字符串输入=scanner.nextLine();
字符位置=输入字符(0);
int ascii=整数.valueOf(input.substring(1));
系统输出打印(KeyEvent.VK_SHIFT);
int-keycode=KeyEvent.getExtendedKeyCodeForChar(Integer.valueOf(input.substring(1));
如果(ascii==16){
keycode=KeyEvent.VK_SHIFT;
}
char-val;
如果(位置='D'){
机器人。按键(按键代码);
}否则如果(位置='U'){
机器人。钥匙释放(钥匙代码);
}
睡眠(100);
}
}
}
如果我输入D16,16是shift的ascii值,它将按住shift按钮直到我说U16,这将提升它。这只是有时有效。运行输入的方法是按enter键。如果我在很短的时间内输入多个输入,移位释放就不会注册。我做错了什么