| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1329 人关注过本帖
标题:那么为什么使用asList()方法转换时,数组要定义为封装类型的呢?
只看楼主 加入收藏
Integer
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2010-7-2
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:2 
那么为什么使用asList()方法转换时,数组要定义为封装类型的呢?
import java.util.Arrays;
import java.util.List;

public class ArraysText {

   
    public static void main(String[] args) {
         Integer[] i={24,2,54,52,45,585};
         List<Integer> list=Arrays.asList(i );      
         for(Integer s1:list){
             System.out.print(s1+"  ");
         }
    }

}
在这个程序中为什么数组不能定义为int型的,那么为什么使用asList()方法转换时,数组要定义为封装类型的呢?
请帮忙解答谢谢了
搜索更多相关主题的帖子: asList 定义 类型 封装 
2010-07-03 10:58
linjx0123
Rank: 9Rank: 9Rank: 9
等 级:贵宾
威 望:14
帖 子:279
专家分:1362
注 册:2006-4-7
收藏
得分:10 
泛型针对的是类,int是基本类型,不是对象,所以不能指定为int。
假如你非要使用int的数组,那么可以如下:
        Integer[] i={24,2,54,52,45,585};
        List list=Arrays.asList(i );      
        for(int j=0;j<list.size();j++){
            System.out.print(list.get(j)+"  ");
        }
2010-07-05 09:57
lampeter123
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:54
帖 子:2508
专家分:6424
注 册:2009-1-30
收藏
得分:10 
public static <T> List<T> asList(T... a)

对于基本类型,元数为基本类型的数组时,函数的行为发生了变异:它不是把这个数组转换为List,而是把这个数组整体作为返回List中的第一个元素,要取得转换后的结果,得首先get(0)才行。

你的优秀和我的人生无关!!!!
    
    我要过的,是属于我自己的生活~~~
2010-07-05 10:29
快速回复:那么为什么使用asList()方法转换时,数组要定义为封装类型的呢?
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.045651 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved