key在这里是你要查找的内容(文字列)。
举个例子
String str = "abcdef"String key = "cde"
int index = 1
这时
str.indexOf(key, index)就返回2。因为我们从"abcdef"的index=1(b的位置)开始找,找到了"cde","cde"在str中的index=2。
此时,我们要继续找到话就要从 str 的 index = 2 + 3 的地方开始找。
2代表的是 "cde"在str中的index
3代表的是"cde"的长度,也就是key.length()。
import java.awt.AWTExceptionimport java.awt.Robot
import java.awt.event.KeyEvent
import java.awt.event.KeyListener
import javax.swing.JFrame
import javax.swing.JPanel
import javax.swing.JTextField
public class CharTest extends JFrame implements KeyListener {
JPanel pnlMain
JTextField txtfile
/**
* @param args
*/
public CharTest(){
pnlMain = new JPanel()
this.getContentPane().add(pnlMain)
txtfile = new JTextField(10)
pnlMain.add(txtfile)
txtfile.requestFocus()
txtfile.addKeyListener(this)
}
public void keyPressed(KeyEvent e) {
System.out.println(""+e.getKeyCode())
}
public void keyTyped(KeyEvent e) {
System.out.println(""+e.getKeyCode())
}
public void keyReleased(KeyEvent e) {
System.out.println(""+e.getKeyCode())
}
public static void main(String[] args) {
try {
Robot robot = new Robot()
JFrame f = new CharTest()
f.setSize(200, 300)
f.setVisible(true)
robot.keyPress(KeyEvent.VK_SHIFT )
robot.keyPress(KeyEvent.VK_1)
robot.keyRelease(KeyEvent.VK_1)
robot.keyRelease(KeyEvent.VK_SHIFT )
} catch (AWTException e) {
// TODO Auto-generated catch block
System.out.println("here")
e.printStackTrace()
}
}
}
java:Map param = new HashMap()
param.put("a","3333")
System.out.println(param.get("a"))//3333
if(param.containsKey("a")){
param.put("a", "565")}
System.out.println(param.get("a"))//565
map存值就类似于往一个瓶子中放东西,而key就是标签,value就是其中放的东西,而取值的时候就相当于取东西,要知道所要取的东西的标签才可以取东西,也就是map.get("key")。
key value根据关键字取值
如果辅以Real-Time Search Engine(实时搜索引擎)进行复杂条件检索、全文检索,就可以替代并发性能较低的MySQL等关系型数据库,达到高并发、高性能,节省几十倍服务器数 量的目的。以MemcacheDB、Tokyo Tyrant为代表的key-value分布式存储,在上万并发连接下,轻松地完成高速查询。而MySQL,在几百个并发连接下,就基本上崩溃了。
以上内容参考:百度百科-Key-Value