//取localStorage中的所有的键(Key)
for(var i=0;i<localStoragelength;i++){
consolelog(localStoragekey(i))
}
//取localStorage中的所有的值(Value)
for(var i=0;i<localStoragelength;i++){
consolelog(localStoragegetItem(localStoragekey(i)))
}
java 获取map中所有的key和value值
javautilIterator 对 collection 进行迭代的迭代器。
javautilIterator it = mapentrySet()iterator();
while(ithasNext()){
javautilMapEntry entry = (javautilMapEntry)itnext();
entrygetKey() //返回对应的键
entrygetValue() //返回对应的值
}
以前遍历Map key-value比较习惯的方式是先获取Map中的所有key值,
然后根据key,依次从Map中去数据,基本方式如下:
Map<String,String> testData = new HashMap<String, String>();
Set<String> keys = testDatakeySet();
for(String key :keys){
Systemoutprintln(key+" "+testDataget(key));
}
上述其中是第一种方法,原来一直用上述方法主要是自己有点懒,有了一种方法后就觉得够用的了,今天看源码,发现还Map接口中还有一个Entry<K,V>的接口,对应的还有一个 Set<MapEntry<K, V>> entrySet();方法。
也就是说其实Map中的每条key-value数据对应着一个Entry,这样的话遍历Map其实就是要取出每个Entry,也就有了第二种遍历方法:
Set<Entry<String, String>> entries = testDataentrySet();
for (Entry<String, String> entry : entries) {
Systemoutprintln(entrygetKey()+":"+entrygetValue());
}
当少量的数据时,上述两种方法的效率是差不多的,当数据比较多时,第二种还是要比第一种快。
当然上述说的两种遍历针对的情况是遍历出key-value,如果是只想遍历key或value,大可不必用以上的方法了,Map中提供了Set<K> keySet()和Collection<V> values()。
ini文件读取一般要引入win32API函数来完成,可以参考以下的函数ReadSection,结果以StringCollection的形式返回,你可以自己再做后续处理:
public string FileName; //INI文件名
//声明读写INI文件的API函数
[DllImport("kernel32")]
private static extern bool WritePrivateProfileString(string section, string key, string val, string filePath);
[DllImport("kernel32")]
private static extern int GetPrivateProfileString(string section, string key, string def, byte[] retVal, int size, string filePath);
//从Ini文件中,将指定的Section名称中的所有Ident添加到列表中
public void ReadSection(string Section, StringCollection Idents)
{
Byte[] Buffer = new Byte[16384];
//IdentsClear();
int bufLen = GetPrivateProfileString(Section, null, null, Buffer, BufferGetUpperBound(0),
FileName);
//对Section进行解析
GetStringsFromBuffer(Buffer, bufLen, Idents);
}
private void GetStringsFromBuffer(Byte[] Buffer, int bufLen, StringCollection Strings)
{
StringsClear();
if (bufLen != 0)
{
int start = 0;
for (int i = 0; i < bufLen; i++)
{
if ((Buffer[i] == 0) && ((i - start) > 0))
{
String s = EncodingGetEncoding(0)GetString(Buffer, start, i - start);
StringsAdd(s);
start = i + 1;
}
}
}
}
import javautilHashMap;
import javautilIterator;
import javautilMap;
import javautilSet;
public class HashMapKey {
public static void main(String[]args){
String value = "map";
Map<String,String> map = new HashMap<String,String>();//HashMap
mapput("0", "what"); //增加值
mapput("1", value);
mapput("2", "asdf");
Set<String> mapSet = mapkeySet(); //获取所有的key值 为set的集合
Iterator<String> itor = mapSetiterator();//获取key的Iterator便利
while(itorhasNext()){//存在下一个值
String key = itornext();//当前key值
if(mapget(key)equals(value)){//获取value 与 所知道的value比较
Systemoutprintln("你要找的key :"+key);//相等输出key
}
}
}
}
我本军团为你解答
list中是map,stream如何拿到key集合
liststream()map(m -> mkeySet())collect(CollectorstoSet());
// Q20:list中是map,stream如何拿到value集合
liststream()map(m -> mvalues())collect(CollectorstoSet());
以上就是关于html怎么取localstorage中的key值全部的内容,包括:html怎么取localstorage中的key值、java怎么获取map的key、c# 读取ini文件某一节点下的所有key,保存到datatable等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)