黑马程序员技术交流社区

标题: 把string数据存入泛型为int的数组中 [打印本页]

作者: q8893616    时间: 2015-5-19 21:50
标题: 把string数据存入泛型为int的数组中
package Exam;
import java.util.ArrayList;
import java.util.Scanner;

public class Test3 {
        public static void main(String[] args) {
                ArrayList<Integer> b = new ArrayList<Integer>();
                Scanner s = new Scanner(System.in);
                System.out.println("输入一个字符串");
                String a = s.nextLine();
                char [] a1 = a.toCharArray();
                for (char c : a1) {
                        b.add(c+1-1);
                }
                for (Integer c1 : b) {
                        System.out.print(c1+" ");
                }
                for (int i = 0; i < b.size(); i++) {
                        int b1 = b.get(i);
                        System.out.print((char)b1);
                }
        }
}
作者: godrick007    时间: 2015-5-19 22:05
很给力

作者: 吴富其    时间: 2015-5-19 22:07

public class insertStrToArray {
        public static void main(String[] args) throws Exception {
                ArrayList<Integer> list = new ArrayList<Integer>();
                Method methodAddString = list.getClass().getMethod("add", Object.class);
                methodAddString.invoke(list, "abc");
                System.out.println(list);
        }
}
这个可以通过反射的方式实现,因为泛型的作用层在编译时。而反射直接获得了add方法的字节码跳过编译层在运行时直接添加。这样就骗过了编译。
作用嘛,比如你得这个集合里存放int类型的数据,但是有及个别的地方需要添加其他类型的数据。就可以用上了!




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