关于java中HashMap的put方法中的参数问题

2024-12-04 05:32:59
推荐回答(5个)
回答1:

HashMap 是以 键值对 形式 保存 数据的,
简单形容 可以 理解为 学号(key),学员(value)
object 类型是java中 除了基本数据类型以外的超类,
也就是说只要你放的对象类型直接或间接继承object,就可以装入key或value中
如果使用泛型 的话 键值是固定的,value不需要强制转换

回答2:

put方法中的参数类型可以在创建HashMap的时候进行指定,之后进行赋值即可。举例:
HashMap headers = new LinkedHashMap();
headers.put("Cache-Control", "no-cache");
headers.put("Connection", "close");
以上HashMap就是先定义了存放的key和value值都是字符串类型,之后可以通过get方法获取到对应的值(如:headers.get("Cache-Control"),结果就是”no-cache“);
备注:”“这个中的类型可以根据实际需要进行修改即可。

回答3:

//ArrayList
{
ArrayList arraylist=new ArrayList();
arraylist.add(0,"end");//指定索引加入值
//需注意的是,如果现有2个值,我加入索引为5的那么就会出现异常
for(int i=0;i<2;i++){
arraylist.add(i,String.valueOf(i));
}
System.out.println("ArrayList:");
for(int i=0;iSystem.out.print(arraylist.get(i)+";");
}
arraylist.add("0");//直接加入值到ArrayList的最后
arraylist.add("0");
System.out.print("\nArrayList\'s lastIndexOf(\"0\") is "+arraylist.lastIndexOf("0"));
}
//Arrays
{
String []array=new String[]{"a","b","c"};
List list=Arrays.asList(array);
System.out.println("\nArrays:");
for(int i=0;iSystem.out.print(list.get(i)+";");
}
System.out.print("\nArrays\'s length is "+array.length);//打印数组的长度
}

//HashMap
{
HashMap hashmap=new HashMap();//一个速度最快的容器
hashmap.put("0","c");
hashmap.put("1","a");
hashmap.put("2","b");
hashmap.put("3","a");
System.out.println("HashMap:");
System.out.println(hashmap);//该容器有其内部的排序方式
Set set=hashmap.keySet();//获取全部键
Iterator iterator=set.iterator();
while(iterator.hasNext()){
System.out.print(hashmap.get(iterator.next())+";");
}
}
//HashSet
{
HashSet hashset=new HashSet();//一个绝对不能重复的类型
hashset.add("c");
hashset.add("b");
hashset.add("a");
hashset.add("a");
hashset.add("b");
System.out.println("\nHashSet:");
System.out.println(hashset);
Iterator iterator=hashset.iterator();//取出元素
while(iterator.hasNext()){
System.out.print(iterator.next()+";");
}
}

//LinkedList
{
LinkedList linkedlist=new LinkedList();//自由使用是它的特色
linkedlist.add("a");
linkedlist.add(1,"c");
linkedlist.addLast("b");
linkedlist.addFirst("d");
System.out.println("\nLinkedList:");
System.out.println(linkedlist);
//linkedlist.clear();//该方法清空容器
//linkedlist.remove(0);//删除索引为0的元素
//linkedlist.remove("d");//删除值为d的元素
//linkedlist.removeFirst();//删除第一个元素
//linkedlist.removeLast();//删除最后一个元素
for(int i=0;iSystem.out.print(linkedlist.get(i)+";");
}
}

}
}

回答4:

我对楼上做一些补充
key 是唯一的,不可重复的,落在后面的代码中重新给该KEY赋值的话,以前KEY中的值将会被新的值代替掉
OBJECT是所有类的‘祖先’

回答5:

什么类型都可以的 HashMap我们最常把key存为String类型 value存储集合或者对象 在做购物车的时候用HashMap是很方便的