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); } }}
运行后发现这么一个情况:
然后我在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; }}
结果是这样:
说明一个自定义的数组需要的==必要要素==有:
1、变量:来确定数组中参数的类型
2、构造方法:来确定你可以往这个数组里添加什么类型的元素,多少个元素,什么次序的元素。
3、toString方法:用for来迭代数组的时候能够显示为正常的内容。