封装与构造方法
package day9;
public class Student {
private String name;
private int age;
//无参构造方法
public Student(){
}
//有参构造方法
public Student(String name, int age) {
this.name = name;
this.age = age;
}
@Override
public String toString() {
return "Student [name=" + name + ", age=" + age + "]";
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
}
方法
package day9;
public class Manager {
private Student stu[];
//初始化方法
public void init(){
stu=new Student[6];
Student student1=new Student(); //创建封装的对象
student1.setName("Jack");
student1.setAge(18);
stu[0]=student1;
Student student2=new Student("Tom",20);//创建对象来调用构造方法
stu[1]=student2;
stu[2]=new Student("Jhon",30); //直接把地址赋值给stu[2];
}
}
查询方法
//查询 通过加强for来遍历,但是加强for只适合来进行遍历
public void show(){
for(Student s:stu){
System.out.println(s+"\t");
}
}
测试查询方法
package day9;
public class Test {
public static void main(String[] args){
Manager manager=new Manager(); //创建方法类的对象
//通过对象来调用方法
manager.init(); //调用初始化方法
manager.show(); //调用查询方法,进行遍历
}
}
插入方法
public void add(Student student){//把新对象插入到数组中
int index=-1;//定义下标
for(int i=0;i<stu.length;i++){
if(stu[i]!=null){
if(stu[i].getName.equals(student.getName){//判断插入的新对象的name是否与对象数组中的name有无重复
System.out.println("数组中已经存在不能插入");
break;
}
}
if(stu[i]==null){
index=i;
break;
}
}
if(index!=-1){
stu[index]=student; //把新对象插入到数组中
System.out.println("插入成功");
}
}
测试插入方法
package day9;
public class Test {
public static void main(String[] args){
Manager manager=new Manager(); //创建方法类的对象
//通过对象来调用方法
manager.init(); //调用初始化方法
Student student=new Student("Young",25);//创建新的对象调用有参的构造方法
manager.add(student); //调用增加方法
manager.show(); //调用查询方法,进行遍历
}
}
删除方法
public void delete(Student student){
int index=-1;
for(int i=0;i<stu.length;i++){
if(stu[i]!=null){
if(stu[i].getName().equals(student.getName())){
index=i;
break;
}
}
}
if(index!=-1){
System.out.println("删除目标已找到,执行删除操作");
for(int i=index;i<stu.length-1;i++){
stu[i]=stu[i+1];
}
System.out.println("删除目标成功");
}else{
System.out.println("没有找到要删除的对象");
}
}
测试删除方法
package day9;
public class Test {
public static void main(String[] args){
Manager manager=new Manager(); //创建方法类的对象
//通过对象来调用方法
manager.init(); //调用初始化方法
Student student=new Student("Jhon",20);//创建新的对象调用有参的构造方法
manager.delete(student); //调用删除方法
manager.show(); //调用查询方法,进行遍历
}
}
修改方法
public void change(Student student){
int index=-1;
for(int i=0;i<stu.length;i++){
if(stu[i]!=null){
if(stu[i].getName().equals(student.getName())){
index=i;
break;
}
}
}
if(index!=-1){
System.out.println("已找到要修改的对象");
stu[index]=student;
System.out.println("修改成功");
}else{
System.out.println("没有找到要修改的对象");
}
}
测试修改方法
package day9;
public class Test {
public static void main(String[] args){
Manager manager=new Manager(); //创建方法类的对象
//通过对象来调用方法
manager.init(); //调用初始化方法
Student student=new Student("Jack",10);//创建新的对象调用有参的构造方法
manager.change(student); //调用修改方法
manager.show(); //调用查询方法,进行遍历
}
}