Java:有关==自定数组==的学习
在 ==《Java程序设计与数据结构教程》== 里我在==P212~P213==页看到一个GradeRange的程序,它用的数组是自定设定的Grade。Grade类中方法杂多,虽说都是Java程序中应该有的方法,但我想知道里面的核心方法究竟是哪几个,于是我展开尝试。
初初开始,我认为是Grade类中的构造方法是这个程序的核心,因为在GradeRange程序中,它创建的Grade类数组能够存放不仅是字符串,还有整形数。这是一般数组不能做到的,而在Grade类的构造函数中设定的形参是String类型以及int类型,这与Grade类数组被实例化的时候表现的形式及其吻合,于是我打了这么两段代码
Much.java(类)
public class Much {
private String name,address;
private int schoolNum;
public Much(String name,String address,int schoolNum){
this.name = name;
this.address = address;
this.schoolNum = schoolNum;
}
}
MuchArrary(主程序)
package ch07;
/**
* Created by Funny_One on 2017/8/29.
*/
public class MuchArrary {
public static void main(String[] args){
Much[] TOF =
{
new Much("袁逸灏\t","广东省\t",20162317),
new Much("刘先润\t","重庆市\t",20162320),
new Much("春旺\t","云南省\t",20162324),
new Much("刘诚昊\t","湖南省\t",20162316)
};
for(Much many : TOF){
System.out.println(many);
}
}
}
运行后发现这么一个情况:
http://ww4.sinaimg.cn/large/0060lm7Tgy1fj0drhtqqpj31h30snafo.jpg
http://ww4.sinaimg.cn/large/0060lm7Tgy1fj0drpf6o7j31hc0snjwm.jpg
然后我在Much类中加入一个新的方法,也就是Grade类中展现的第二个方法toString
Much.java
package ch07;
/**
* Created by Funny_One on 2017/8/29.
*/
public class Much {
private String name,address;
private int schoolNum;
public Much(String name,String address,int schoolNum){
this.name = name;
this.address = address;
this.schoolNum = schoolNum;
}
//此处为新加的方法
public String toString(){
return name+"\t"+address+"\t"+schoolNum;
}
}
结果是这样:
http://ww2.sinaimg.cn/large/0060lm7Tgy1fj0drqcuapj31h90sowjt.jpg
说明一个自定义的数组需要的==必要要素==有:
1、变量:来确定数组中参数的类型
2、构造方法:来确定你可以往这个数组里添加什么类型的元素,多少个元素,什么次序的元素。
3、toString方法:用for来迭代数组的时候能够显示为正常的内容。