黑马程序员技术交流社区
标题:
数组有关问题
[打印本页]
作者:
詹英鹏
时间:
2011-12-31 18:06
标题:
数组有关问题
本帖最后由 詹英鹏 于 2012-1-2 11:26 编辑
可以这样定义一个int型数组int[] arr=new int[5];
然后初始化arr[1]=6;arr[2]=9......
比如一个
class Cat
{
String name;
Cat(String name)
{
this.name=new name;
}
}
一个猫的类,可以不可以定义一个全是猫的数组,使用for语句要如何初始化啊
还有,数组元素还可以是什么呢,对象,函数?
作者:
杨旭
时间:
2011-12-31 18:33
class Cat{
String name;
Cat(String name){
this.name = name ;
}
}
public class Demo{
public static void main(String[] args) {
Cat[] cats = new Cat[10];
for (int i = 0; i < cats.length; i++) {
cats[i] = new Cat("Maomao"+i);
}
for (Cat cat : cats) {
System.out.println(cat.name);
}
}
}
复制代码
作者:
周吉明
时间:
2011-12-31 18:54
使用for循环初始化
int[] Arr = new int[5];
for(int i=0; i<intArr.length; i++){
Arr[i] = i ;
}
“还有,数组元素还可以是什么呢,对象,函数?”数组元素好像只能是字符、数字、地址值等确定的值,你这一问我也不太清楚了。
作者:
李盈科
时间:
2011-12-31 20:12
先说第二个问题 数组可以存放任何类型,你定义什么类型就存放什么类型 也就是说可以存放原生数据类型 和 引用数据类型
程序的话我觉得2楼的同学写的不错
作者:
代臣
时间:
2011-12-31 21:01
this.name = new name;
按照你的定义,上面这条语句应该是用来把Cat方法传递过来的name赋值给新建对象的,即赋值给新建对象在堆中的name,首先语句使用就有问题,有语法错误,应该改为this.name = name;
其次你所说的“数组元素还可以是什么呢,对象,函数?”,首先数组定义的是什么数据类型或者类的类型(类的内容是什么),就给元素赋什么样的值,自不用问,比如例子中如果arr[]这个数组的数据类型如果是Cat(猫)类型,那么元素肯定是猫这个对象。
class Cat
{
String name;
Cat(String name)//这个地方用到了构造函数
{
//this.name = new name;
/*按照你的定义,上面这条语句应该是用来把Cat方法传递过来的name赋值给新建对象的,
即赋值给堆中的对象的name,首先语句使用就有问题,有语法错误,应该替换为
下面这条语句*/
this.name = name;
show();//定义了一个show方法输出Cat对象的name
}
//show方法
public void show()
{
System.out.println("name="+this.name);
}
}
class ArrayDemo
{
public static void main(String[] args)
{
Cat C = new Cat("加菲猫");
/*构造函数新建对象即初始化,即在建立对象之后就已经给对象初始化了,
所以会输出name=加菲猫*/
//定义猫的数组
Cat[] C1 = new Cat[3];
//上面是用for循环实现的,这里用下面的方法实现
for (int i = 0; i < C1.length; i ++)
{
C1[2] = new Cat("波斯猫"+i);
}
}
}
复制代码
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2