「java生成map」java生成mac

博主:adminadmin 2022-12-04 03:12:07 87

本篇文章给大家谈谈java生成map,以及java生成mac对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。

本文目录一览:

关于JAVA MAP怎么初始化生成

首先你要理解 Map的基本结构,key-value

这里最外层的Map,key是String类型,value是ArrayList。ArrayList里面放得又是Map,这个Map的key是String,value也是String。

import java.util.ArrayList;

import java.util.HashMap;

import java.util.Map;

public class Test {

    public static void main(String[] args) {

        MapString, ArrayListMapString, String topMap = new HashMap();

        String key1 = "map_key1"; // topMap 的第一个key

        ArrayListMapString, String value1 = new ArrayList(); // topMap 的第一个value

        // start

        MapString, String strMap = new HashMap();

        strMap.put("hello", "你好");

        strMap.put("thanks", "谢谢");

        value1.add(strMap);

        value1.add(new HashMap()); // 添加一个空的 Map

        // end

        topMap.put(key1, value1); // 放入topMap

        // 以上 start 到 end 段的代码是在往value1的ArrayList中填充数据

        // 不填充也可以放入到topMap中,就像下面这样

        topMap.put("emptyList", new ArrayListMapString, String());

        topMap.put("emptyList2", new ArrayList()); // jdk 1.7 及之后推荐这样写,省掉泛型描述。前面的new HashMap()、new ArrayList()也是省掉了

    }

}

java中,HashMap的创建流程是什么?

创建流程,指的是:

MapString, String mp = new HashMapString, String();

吗?

就是创建一个HashMap对象,其中键的类型为String,值的类型也为String;

当然,键和值的类型也可以是其他的。例如,创建了一个类叫做Student,我们现在还有每一个学生的学号。那么就可以建立一个MapString, Student 这样的HashMap。通过这样的方式,我们就可以利用学号来找到具体对应的学生。

java bean怎么转化为map 不用第三方

在做导入的时候,遇到了需要将map对象转化 成javabean的问题,也就是说,不清楚javabean的内部字段排列,只知道map的 key代表javabean的字段名,value代表值。

那现在就需要用转化工具了。是通用的哦!

首先来看 JavaBean 转化成Map的方法:

[java] view plaincopy

[java]

/**

* 将一个 JavaBean 对象转化为一个 Map

* @param bean 要转化的JavaBean 对象

* @return 转化出来的 Map 对象

* @throws IntrospectionException 如果分析类属性失败

* @throws IllegalAccessException 如果实例化 JavaBean 失败

* @throws InvocationTargetException 如果调用属性的 setter 方法失败

*/

@SuppressWarnings({ "rawtypes", "unchecked" })

public static Map convertBean(Object bean)

throws IntrospectionException, IllegalAccessException, InvocationTargetException {

Class type = bean.getClass();

Map returnMap = new HashMap();

BeanInfo beanInfo = Introspector.getBeanInfo(type);

PropertyDescriptor[] propertyDescriptors = beanInfo.getPropertyDescriptors();

for (int i = 0; i propertyDescriptors.length; i++) {

PropertyDescriptor descriptor = propertyDescriptors[i];

String propertyName = descriptor.getName();

if (!propertyName.equals("class")) {

Method readMethod = descriptor.getReadMethod();

Object result = readMethod.invoke(bean, new Object[0]);

if (result != null) {

returnMap.put(propertyName, result);

} else {

returnMap.put(propertyName, "");

}

}

}

return returnMap;

}

下面是将Map转化成JavaBean对象的方法:

[java] view plaincopy

[java]

/**

* 将一个 Map 对象转化为一个 JavaBean

* @param type 要转化的类型

* @param map 包含属性值的 map

* @return 转化出来的 JavaBean 对象

* @throws IntrospectionException 如果分析类属性失败

* @throws IllegalAccessException 如果实例化 JavaBean 失败

* @throws InstantiationException 如果实例化 JavaBean 失败

* @throws InvocationTargetException 如果调用属性的 setter 方法失败

*/

@SuppressWarnings("rawtypes")

public static Object convertMap(Class type, Map map)

throws IntrospectionException, IllegalAccessException,

InstantiationException, InvocationTargetException {

BeanInfo beanInfo = Introspector.getBeanInfo(type); // 获取类属性

Object obj = type.newInstance(); // 创建 JavaBean 对象

// 给 JavaBean 对象的属性赋值

PropertyDescriptor[] propertyDescriptors = beanInfo.getPropertyDescriptors();

for (int i = 0; i propertyDescriptors.length; i++) {

PropertyDescriptor descriptor = propertyDescriptors[i];

String propertyName = descriptor.getName();

if (map.containsKey(propertyName)) {

// 下面一句可以 try 起来,这样当一个属性赋值失败的时候就不会影响其他属性赋值。

Object value = map.get(propertyName);

Object[] args = new Object[1];

args[0] = value;

descriptor.getWriteMethod().invoke(obj, args);

}

}

return obj;

java集合框架 map 如何创建一个新对象

以下有几个方法,你可以试试:

1.Map其实本身就是一个接口,如果你想要创建一个map的对象也可以使用它的实现类,常用有HashMap,TreeMap,至于怎么创建只要new一下就可以了。

2.如果要是从map当中选取出一个对象map.get(Object key),然后强制转化为你想要的类型,前提是你要知道该对象类型与你需要类型一致。

操作的时候一定要注意细节,这个创建有些麻烦,而且每一步都必须正确这样才可以确保最后可以完成你要的效果,不要太粗心。

java生成map的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于java生成mac、java生成map的信息别忘了在本站进行查找喔。

The End

发布于:2022-12-04,除非注明,否则均为首码项目网原创文章,转载请注明出处。