黑马程序员技术交流社区

标题: 代码问题 [打印本页]

作者: 陈贺    时间: 2013-8-10 09:59
标题: 代码问题
  1. public class Test1  {
  2.         public static void main(String[] args){
  3.         ArrayList collection = new ArrayList();
  4.         collection.add(1);
  5.         collection.add(1L);//为什么1后面只能添加L但打印不出结果
  6.         collection.add("abc");
  7.         System.out.println(collection.get(1));//打印结果为1
  8.         }       
  9. }
复制代码

作者: 茶念小手    时间: 2013-8-10 10:06
  1. collection.add(1L);
复制代码
那个L代表的是把1转变成Long类型
并不是实际的值  实际的值还是1
他跟
  1. collection.add(1);
复制代码
区别在于一个是Intget类型 一个是Long类型
作者: hoyouly    时间: 2013-8-10 12:15
collection.add(1L);  你添加的是Long类型,也叫长整型 。。java 的 8 个基本类型的一种。你应该要把 java 的 8 种基本类型一起记:byte short int long char float double boolean         int 是 32 位的整数,long 就是 64 位的整数,表示范围:-2^63 ~ 2^63 -1

希望你能明白
作者: 钟佩桓    时间: 2013-8-10 12:43
ArrayList arr =new ArrayList();
                arr.add(1);
                arr.add(1l);
                arr.add(1d);
                arr.add("abc");
                                System.out.println(arr.get(0));
                System.out.println(arr.get(1));
                System.out.println(arr.get(2));
add()方法的参数是一个Object类型   不止可以添加1l     这里你添加的1l自动装箱成了一个 Long 但是打印出来的结果还是1
打印结果为:
1
1
1.0

作者: 赵国刚    时间: 2013-8-10 18:37
collection.add(1);

05.        collection.add(1L)

一个是Intget类型 一个是Long类型,
long是基本的数据类型,如果变味long型必须后面加L肯定不打印L如果那样不编程了字符串或字符




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