Java中的Set,List,Map的区别是什么?
JAVA集合主要分为三种类型:
Set(集)
List(列表)
Map(映射)
Collection 接口
Collection是最基本的集合接口,声明了适用于JAVA集合(只包括Set和List)的通用方法。
Set 和List 都继承了Conllection,Map没有
Collection接口的方法:
boolean add(Object o):向集合中加入一个对象的引用
void clear():删除集合中所有的对象,即不再持有这些对象的引用
boolean isEmpty():判断集合是否为空
boolean contains(Object o): 判断集合中是否持有特定对象的引用
Iterartor iterator(): 返回一个Iterator对象,可以用来遍历集合中的元素
boolean remove(Object o):从集合中删除一个对象的引用
int size():返回集合中元素的数目
Object[] toArray():返回一个数组,该数组中包括集合中的所有元素
关于:Iterator() 和toArray() 方法都用于集合的所有的元素,前者返回一个Iterator对象,后者返回一个
包含集合中所有元素的数组。
Java中怎么遍历map中value值?
public static void main(String[] args){ Map map = new HashMap(); map.put("id1", "wang"); map.put("id2", "sheng"); //方法一 Set set = map.keySet(); for (String s:set) { System.out.println(s+","+map.get(s)); } //方法二 Set> entryseSet=map.entrySet(); for (Map.Entry entry:entryseSet) { System.out.println(entry.getKey()+","+entry.getValue()); } }
希望我的回答可以帮到你。
java json字符串转换Map
用JSONUtil.deserialize()就可以了,范例:
import org.apache.struts2.json.JSONUtil;
public class JsonToJava {
public static void main(String[] args) {
try {
String s = "{\"D\":[\"a\",\"b\"],\"A\":[\"a\",\"b\"],\"B\":[\"a\",\"b\"],\"C\":[\"a\",\"b\"]}";
Object o = JSONUtil.deserialize(s);
System.out.println(o.getClass() + ": " + o);
} catch (Exception e) {
e.printStackTrace(System.out);
}
}
}1. import java.util.hashmap;
2. import java.util.iterator;
3. import java.util.map;
4. import net.sf.json.jsonobject;
5. public map tomap(object object)
6. {map data = new hashmap();
7. // 将json字符串转换成jsonobject
8. jsonobject jsonobject = jsonobject.fromobject(object);
9. iterator ite = jsonobject.keys();
10. // 遍历jsonobject数据,添加到map对象
11. while (ite.hasnext())
12. {string key = ite.next().tostring();
13. string value = jsonobject.get(key).tostring();
14. data.put(key, value);
15. // 或者直接将 jsonobject赋值给map
16. // data = jsonobject;
17. return data;
}import org.apache.struts2.json.JSONUtil;
public class JsonToJava {
public static void main(String[] args) {
try {
String s = "{"D":["a","b"],"A":["a","b"],"B":["a","b"],"C":["a","b"]}";
Object o = JSONUtil.deserialize(s); //转化
System.out.println(o.getClass() + ": " + o); //输出转化结果
Object o1 = ((HashMap)o).get("A");
System.out.println("A = " + o1.getClass() + ": " + o1); // 输出转化后的HashMap中“A”属性
} catch (Exception e) {
e.printStackTrace(System.out);
}
}
输出结果:
class java.util.HashMap: {D=[a, b], A=[a, b], B=[a, b], C=[a, b]}
A = class java.util.ArrayList: [a, b]
java 中object对象与map可以相互强转吗?
Map对象转换为Object对象,这是肯定可以的。
但是,如果要用Object对象转换为Map对象,最好就是要:
public Map function(Object obj){
if(obj instanceof Map) return (Map)obj;
return null;
这样就可以避免非Map的对象转化为Map对象的时候,会引发RUNTIMEEXCEPTION