Java中的数组

        我们都知道,数组是存放同一类型的数据,并在内存空间中连续存放的,数组的大小一旦确定就不能修改.

        而对于在Java中,数组类型的变量可以同时存储多个同类型基础数据类型的变量或对象.,通过索引进行区分,数组中的第一个元素的索引为0,在Java中,创建数组有两个步骤:

        1.声明一个对数组的引用.即:  数据类型 [ ] 数组变量名;  如:int [ ] sums;

        2.使用new关键字初始化数组,并一定要指定数组的大小.即: 数组变量名=new 数据类型[ 长度];  如: sums=new int  [5];

       以下程序是创建一个引用型的数组,并对每个对象赋初值,通过调用ageMax方法来找出所有人中年龄最大的,同时打印出年龄最大的那个人的姓名.

public class TestMain {


 public static void main(String[] args) {

       //引用类型的数组
       Scanner scan = new Scanner(System.in);
       System.out.println("请确定你一共要记录多少个人的信息?");
       int len = scan.nextInt();
       Person[] allPersons = new Person[len];      //声明引用类型的数组,有len个对象(元素)
       for(int i = 0; i < len; i++){
             allPersons[i] = new Person();    //如果没有每个对象new实例化,将抛出一个nullpointerException的异常
             System.out.println("请输入第" + (i + 1) + "个人的名字:");
             allPersons[i].setName( scan.next());
             System.out.println("请输入第" + (i + 1) + "个人的年龄:");
             allPersons[i].setAge(scan.nextInt());
        }
  
     System.out.println("记录完毕,请检查!");
     for(int i = 0; i < len; i++){
          System.out.println(allPersons[i].getName() + "    " + allPersons[i].getAge());
     }
  
     //ageMax(allPersons);  //用static静态申明后就可以不用new一个对象,就能直接调用方法了
  
      TestMain person=new TestMain();//  由于没使用static修饰符,所以要new一个TestMain引用型的

      person.ageMax(allPersons);  //通过对象来调用ageMaxf方法
   
  }

 

 //public static void ageMax(Person[] person){      //用static静态申明一个方法
 
  public void ageMax(Person[] person){
        String name=person[0].getName();
        int  ageMax=person[0].getAge();
        for(int i=1;i<person.length;i++){
                 if(ageMax<person[i].getAge()){
                      ageMax=person[i].getAge();
                      name=person[i].getName(); 
                 }
          }
  System.out.println("姓名为 "+name+" 的这个人年龄最大,并且他的年龄为 :"+ageMax);
  
   }

}

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值