黑马程序员技术交流社区
标题:
为什么在关于集合的程序中对clear方法的操作和其他方法不同
[打印本页]
作者:
张翼
时间:
2011-11-9 09:49
标题:
为什么在关于集合的程序中对clear方法的操作和其他方法不同
public class acc
{
public static void main(String argv[])
{
ArrayList al=new ArrayList();
al.add("java1");
al.add("java2");
al.add("java3");
sop(al.size());
sop(al);
sop(al.clear());//无法编译
sop(al.remove("java2"));
al.clear();
sop(al);
}
public static void sop(Object obj)
{
System.out.println(obj);
}
}
用sop输出集合时候,为什么使用size等方法就可以直接当作参数,然后输出,但是clear方法作为参数就是错误呢?
作者:
范龙彬
时间:
2011-11-9 09:58
ArrayList 中的当clear() 方法无返回值
格式:void clear()
移除此列表中的所有元素。 。
你把clear() 写在sop(); 中当然会报错
直接调用就可以了
作者:
成杰
时间:
2011-11-9 10:01
al.size(),这个函数有返回值,返回的是集合中元素的个数,返回值为int。因此可以直接打印;但是al.clear(),这个函数没有返回值,你要怎么打印出来结果呢?
作者:
张翼
时间:
2011-11-9 10:27
原来如此啊
作者:
柴亚飞
时间:
2011-11-9 15:22
并不是没有返回值
而是方法返回了空值。
void其实算一个特殊的值。
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2