我的虚拟键盘快完成了,我正在努力提高性能。
我想问你。这是用于替换按钮中字符的任何更好/更快的解决方案。
getButtons() => 列表< JButton >
有52个按钮需要替换文本,16个按钮被其他字符替换,36个大写。在 1.6GHz 双核上大约需要 0.5-0.7 秒。我想做大约 0.2-0.3 或即时:D
public void toLowerCase() { String[] from = { "§", "'", "\"", "+", "!", "%", "/", "=", "(", ")", ":", "_", "*", "#", ";", "?" }; String[] to = { "0", "1", "2", "3", "4", "5", "6", "7", "8", "9", ".", "-", "\\", "$", ",", "ß" }; char curChar; for (int i = 0; i < getButtons().size(); i++) { curChar = toChar(((JButton) getButtons().get(i)).getText()); for (int x = 0; x < from.length; x++) { if (compareChar(curChar, toChar(from[x]))) { ((JButton) getButtons().get(i)).setText(to[x]); } } ((JButton) getButtons().get(i)).setText(((JButton) getButtons().get(i)).getText().toString().toLowerCase()); } repaint(); }
非常感谢大家:-)