黑马程序员技术交流社区

标题: 泛型 [打印本页]

作者: ljd    时间: 2016-6-3 21:29
标题: 泛型
请教如何在arra<Integer> list集合中添加String类型数据?
作者: 18611643318    时间: 2016-6-3 23:06
暴力反射
作者: 18611643318    时间: 2016-6-3 23:16
  1. package com.itheima;

  2. import java.lang.reflect.InvocationTargetException;
  3. import java.lang.reflect.Method;
  4. import java.util.ArrayList;
  5. import java.util.List;

  6. public class Test25 {
  7.         public static void main(String[] args) {
  8.                 List<Integer> list = new ArrayList<Integer>();
  9.                 String str = "我是一个字符串";
  10.                 Integer i = 10;
  11.                 Class clazz = list.getClass();   //得到class
  12.                 Method m = null;
  13.                 try {
  14.                          m = clazz.getMethod("add", Object.class);  //得到add方法对象
  15.                 } catch (NoSuchMethodException | SecurityException e) {
  16.                         // TODO Auto-generated catch block
  17.                         e.printStackTrace();
  18.                 }
  19.                 //正常添加
  20.                 list.add(i);
  21.                 try {
  22.                         //反射添加
  23.                         m.invoke(list, i);
  24.                         m.invoke(list, str);
  25.                 } catch (IllegalAccessException | IllegalArgumentException
  26.                                 | InvocationTargetException e) {
  27.                         // TODO Auto-generated catch block
  28.                         e.printStackTrace();
  29.                 }
  30.                 //遍历
  31.                 for (Object obj : list) {
  32.                         System.out.println(obj);
  33.                 }
  34.         }
  35. }
复制代码



作者: likonglin110    时间: 2016-6-4 00:11
如果是int类型的String字符串可以用Integer.parseInt()这个方法把它变成int类型再添加进去
作者: haojingwei310    时间: 2016-6-4 00:19
要么反射,  要么转换成String 再天健,  转成String 有三种,  一般选择 + " " 来完成




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2