Java中对象数组的使用方法详解

本文实例讲述了Java中对象数组的使用方法。分享给大家供大家参考,具体如下:

一 点睛

对象可以用数组来存放,通过下面两个步骤来实现。

1 声明以类为数据类型的数组变量,并用new分配内存空间给数组。

2 用new产生新的对象,并分配内存空间给它。

下面介绍4种方式来定义对象数组

方式一:静态方式

Person p1[] = {
     new Person(),
     new Person(),
     new Person()
   };

方式二:动态初始化化

Person p2[];
p2 = new Person[3];
for(int i=0;i<p2.length;i++)
{
  p2[i] = new Person();
}

方式三:数组元素指向所定义的对象

Person p3[];
p3 = new Person[3];
p3[0] = new Person();
p3[1] = new Person();
p3[2] = new Person();

方式四:创建对象数组,并分配对象空间

Person p4[] = new Person[3];
p3[0] = new Person();
p3[1] = new Person();
p3[2] = new Person();

二 对象数组实战

1 代码

class Person
{
   String name = "小明";
   int age = 5;
   public Person()
   {
   }
   // 构造函数,创建新对象时调用
   public Person( String name, int age )
   {
      this.name = name ;
      this.age = age ;
   }
   public String talk()
   {
      return "我是:" + this.name + ",今年:" + this.age + "岁";
   }
}
public class ObjectArray
{
   public static void main(String[] args)
   {
      // 静态方式
      Person p1[] = {
           new Person(),
           new Person(),
           new Person()
         };
      // 动态方式
      Person p2[];
      p2 = new Person[3];
      for(int i=0;i<p2.length;i++)
      {
        p2[i] = new Person();
      }
      // 数组元素指向所定义的对象
      Person p3[];
      p3 = new Person[3];
      p3[0] = new Person();
      p3[1] = new Person();
      p3[2] = new Person();
      // 创建对象数组,并分配内存空间
      Person p4[] = new Person[3];
      p4[0] = new Person();
      p4[1] = new Person();
      p4[2] = new Person();
      for( int i = 0; i <p4.length; ++i )
      {
        System.out.println( p4[i].talk( ) ) ;
      }
      Person p[] = {
           new Person( "张三", 25 ),
           new Person( "李四", 30 ),
           new Person( "王五", 35 )
         };
      for( int i = 0; i <p.length; ++i )
      {
        System.out.println( p[i].talk( ) ) ;
      }
   }
}

2 运行

我是:小明,今年:5岁
我是:小明,今年:5岁
我是:小明,今年:5岁
我是:张三,今年:25岁
我是:李四,今年:30岁
我是:王五,今年:35岁

三 代码图解

Person per[];
per = new Person[3];
per[0] = new Person();
per[1] = new Person();
per[2] = new Person();

参考

https://www.nhooo.com/article/168857.htm

https://www.nhooo.com/article/168862.htm

四 实战

1 代码

public class Test {
  public static void main(String[] args) {
    Person[] ps = new Person[3]; // 声明一个对象数组,里面有三个对象
    System.out.println("---------------数组声明后-------------------");
    for (int x = 0; x < ps.length; x++) {
      System.out.print(ps[x] + " "); // 循环输出
    }
    // 创建3个人,并实例化
    Person p1 = new Person("jerry", 18);
    Person p2 = new Person("tom", 20);
    Person p3 = new Person("rose", 25);
    ps[0] = p1; // 实例化第一个元素
    ps[1] = p2; // 实例化第二个元素
    ps[2] =p3; // 实例化第三个元素
    System.out.println("\n---------------对象实例化-------------------");
    for (int x = 0; x < ps.length; x++) {
      System.out.print(ps[x] + " ");
    }
  }
}
class Person {
  private String name; // 姓名属性
  private int age; // 年龄属性
  public Person(String name, int age) { // 通过构造方法设置内容
    this.name = name; // 为姓名赋值
    this.age = age; // 为年龄赋值
  }
  @Override
  public String toString() {
    return "Person [name=" + name + ", age=" + age + "]";
  }
}

2 运行

---------------数组声明后-------------------
null null null
---------------对象实例化-------------------
Person@6d06d69c Person@7852e922 Person@4e25154f

3 图解

更多关于java相关内容感兴趣的读者可查看本站专题:《Java数组操作技巧总结》、《Java字符与字符串操作技巧总结》、《Java数学运算技巧总结》、《Java数据结构与算法教程》及《Java操作DOM节点技巧总结》

希望本文所述对大家java程序设计有所帮助。

声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:notice#nhooo.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。