A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© ljd 中级黑马   /  2016-6-3 21:29  /  574 人查看  /  4 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

请教如何在arra<Integer> list集合中添加String类型数据?

4 个回复

倒序浏览
暴力反射
回复 使用道具 举报
  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. }
复制代码


回复 使用道具 举报
如果是int类型的String字符串可以用Integer.parseInt()这个方法把它变成int类型再添加进去
回复 使用道具 举报
要么反射,  要么转换成String 再天健,  转成String 有三种,  一般选择 + " " 来完成
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马