举个例子:
Map<Integer, String> map = new HashMap<Integer, String>();
先拿所有的键:
Integer[] keys = mapkeySet()toArray(new Integer[0]);
然後随机一个键,找出该值:
Random random = new Random();
Integer randomKey = keys[randomnextInt(keyslength)];
String randomValue = mapget(randomKey);
//第一种:普遍使用,二次取值
Systemoutprintln("通过MapkeySet遍历key和value:");
for (String key : mapkeySet()) {
Systemoutprintln("key= "+ key + " and value= " + mapget(key));
}
//第二种
Systemoutprintln("通过MapentrySet使用iterator遍历key和value:");
Iterator<MapEntry<String, String>> it = mapentrySet()iterator();
while (ithasNext()) {
MapEntry<String, String> entry = itnext();
Systemoutprintln("key= " + entrygetKey() + " and value= " + entrygetValue());
}
public static void main(String[] args) {
Map<String, String> map = new HashMap<String, String>();
mapput("key1", "value1");
mapput("key2", "value2");
mapput("key3", "value3");
Set<String> keySet = mapkeySet();
int i = mapsize()-1;
Map<Integer, String> mapKey = new HashMap<Integer, String>();
Map<Integer, String> mapValue = new HashMap<Integer, String>();
for(javautilMapEntry<String, String> entry : mapentrySet()) {
//将原来MAP的VALUE放入新的MAP的VALUE里面
mapKeyput(i, entrygetValue());
//将原来MAP的KEY放入新的MAP的VALUE 里面
mapValueput(i, entrygetKey());
i--;
}
//打印KEY值
Systemoutprintln(mapKeyget(2));
//打印VALUE值
Systemoutprintln(mapValueget(0));
}
扩展资料:
java键值对的使用
Map集合没有继承Collection接口,但是其提供了key到value的映射。每一个key不能有相同,每个key只能映射一个value值。
下面通过一个程序来说明键值对的使用,下面是一个基本的键值对应用程序:
package Test;
import javautilCollection;
import javautilHashMap;
import javautilIterator;
import javautilMap;
import javautilSet;
public class KeyValue {
public static void main(String[] args) {
Map <String,String> map=new HashMap<>();
mapput("01", "张三");
mapput("02", "王五");
Set<String> set=mapkeySet();
Iterator <String> it=setiterator();
Systemoutprintln("key中集合元素:");
while(ithasNext()){
Systemoutprintln(itnext());
}
Collection <String> coll=mapvalues();
it=colliterator();
Systemoutprintln("value中集合元素:");
while(ithasNext()){
Systemoutprintln(itnext());
}
}
}
输出结果如图所示:
12<insert id="xxx" parameterType="xxx" useGeneratedKeys="true" keyProperty="id"></insert>
useGeneratedKeys
true,需要你表主键自动增长
keyProperty
id,主键名称为id
比如又一个实体类User,实例化成user,里面有
id
name
sex,三个属性,name
sex赋值之后,调用insert,此时user
的id值会自动赋值进去。
最简单的直接设置resultType=“map”,得到的就是一个List<map>每一个Map的key就是查询结果的列名,也就是表的字段名。当然sql语句中最好as一下复杂一点可以自定义一个resultMap标签
其中result可以自定义,select标签中的resultMap="result",和上面的resultMap标签的id对应property设置的是自定义的字段名称,也就是结果集中每一个Map的keycolumn设置查询结果的字段名称然后通过for(List<mapmap:list){
mapget("c1");//获取c1对应的字段的值
。。。}
以上就是关于JAVA,如何随机取出Map中一对键和值全部的内容,包括:JAVA,如何随机取出Map中一对键和值、java 怎么样获取Map中第几个键值对、mybatis中如何获取自动生成的(主)键值 给出示例代码等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)