/**
 * 对象数组的使用
 */
package com.test5; import java.io.BufferedReader;
import java.io.InputStream;
import java.io.InputStreamReader; public class Test2 {
    private static final BufferedReader br = null;
    public static void main(String[] args) throws Exception{
    //定义一个可以存放四只狗的对象数组
     Dog dogs[]=new Dog[4];
     //给各个狗赋初值
    /* dogs[0]=new Dog();
     dogs[0].setName("花花");
     dogs[0].setWeigth(4.5f);
 */
     InputStreamReader isr=new InputStreamReader(System.in);
     BufferedReader br=new BufferedReader(isr);
     for(int i=0;i<4;i++)
    {
        dogs[i]=new Dog();
         System.out.println("请输入第"+(i+1)+"狗名");
         //从控制台读取狗名
         String name=br.readLine();
         dogs[i].setName(name);
         System.out.println("请输入体重");
         String s_weight=br.readLine();
         float weight=Float.parseFloat(s_weight);
         //将名字赋给对象
         dogs[i].setWeight(weight);
        
    }
     //计算平均体重
     float allWeight=0;
     for(int i=0;i<4;i++){
        allWeight+=dogs[i].getWeight();
     }
     float acWeight=allWeight/dogs.length;
     System.out.println("总体中="+allWeight+"平均体重"+acWeight);
     //找出体重最大的狗
     //假设第一只狗体重最大
     float maxWeight=dogs[0].getWeight();
     int maxIndex=0;
     for(int i=1;i<dogs.length;i++){
         if(maxWeight<dogs[i].getWeight()){
             maxWeight=dogs[i].getWeight();
             maxIndex=i;//下标改变
         }
     }
     System.out.println("体重最大的够是第"+(maxIndex+1)+"体重是"+dogs[maxIndex].getWeight());
    
    //根据狗名查找狗的体重
    
     System.out.println("请输入需要查找的狗名:");
     String name=br.readLine();
       
      for(int i=0;i<dogs.length;i++){
       if(name.equals(dogs[i].getName())){
         System.out.println("你要找的狗是:" + dogs[i].getName() + "体重是:" + dogs[i].getWeight());
      }    
    }
}
}
 //定义一个狗类
 class Dog{
     private String name;
     private float weight;
     public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public float getWeight() {
        return weight;
    }
    public void setWeight(float weight) {
        this.weight = weight;
    }
 }

java语言一维数组,对象数组的更多相关文章

  1. JS对象 Array 数组对象 数组对象是一个对象的集合,里边的对象可以是不同类型的。数组的每一个成员对象都有一个“下标”,用来表示它在数组中的位置,是从零开始的

    Array 数组对象 数组对象是一个对象的集合,里边的对象可以是不同类型的.数组的每一个成员对象都有一个"下标",用来表示它在数组中的位置,是从零开始的 数组定义的方法: 1. 定 ...

  2. Java中一维,二维数组的静态和动态初始化

    今天我们要开始来讲讲Java中的数组,包括一维数组和二维数组的静态初始化和动态初始化 数组概述: 数组可以看成是多个相同类型数据的组合,对这些数据的统一管理; 数组变量属于引用数据类型,数组也可以看成 ...

  3. 2.4JAVA基础复习——JAVA语言的基础组成数组

    JAVA语言的基础组成有: 1.关键字:被赋予特殊含义的单词. 2.标识符:用来标识的符号. 3.注释:用来注释说明程序的文字. 4.常量和变量:内存存储区域的表示. 5.运算符:程序中用来运算的符号 ...

  4. JAVA笔记4__static关键字/对象数组/foreach/方法的可变参数

    /** * static关键字:修饰属性(实质就是全局变量).方法(无需本类的对象即可调用此方法).类. * 1.static方法只能调用static方法 * 2.static方法只能访问static ...

  5. javascript数组/对象数组的深浅拷贝问题

    一.问题描述 在项目里的一个报名页面需要勾选两条信息(信息一和信息二),由于信息一和信息二所拥有的数据是一致的,所以后台只返回了一个对象数组,然后在前台设置了两个List数组来接收并加以区分.原型如下 ...

  6. [java学习笔记]java语言基础概述之数组的定义&常见操作(遍历、排序、查找)&二维数组

    1.数组基础 1.什么是数组:           同一类型数据的集合,就是一个容器. 2.数组的好处:           可以自动为数组中的元素从零开始编号,方便操作这些数据. 3.格式:  (一 ...

  7. 使用java语言实现一个动态数组(详解)(数据结构)

    废话不多说,上代码 1.从类名开始(我真是太贴心了) public class Array<E> 首先数组类需要带有泛型,这个不多说.需要注意的是在java中,数组只能存放同一个类型的. ...

  8. Java语言基础(方法与数组)_DAY05

    1:函数(掌握)   (1)定义在类中,有特定功能的一段小程序,可以独立运行.    (2)函数的格式:       修饰符 返回值类型 函数名(形参类型 形式参数1,形参类型 形式参数2...)   ...

  9. day05<Java语言基础--数组>

    Java语言基础(数组概述和定义格式说明) Java语言基础(数组的初始化动态初始化) Java语言基础(Java中的内存分配以及栈和堆的区别) Java语言基础(数组的内存图解1一个数组) Java ...

随机推荐

  1. 控件(选择类): ListBox, RadioButton, CheckBox, ToggleSwitch

    1.ListBox 的示例Controls/SelectionControl/ListBoxDemo.xaml <Page x:Class="Windows10.Controls.Se ...

  2. Paths(转载)

    Paths中的几个重要元素 Points void CGContextMoveToPoint ( CGContextRef c, CGFloat x, CGFloat y ); 指定一个点成为curr ...

  3. BZOJ 4551: [Tjoi2016&Heoi2016]树

    4551: [Tjoi2016&Heoi2016]树 Time Limit: 20 Sec  Memory Limit: 128 MBSubmit: 748  Solved: 394[Subm ...

  4. 【poj3237】 Tree

    http://poj.org/problem?id=3237 (题目链接) 树链剖分模板题,然而这150+行的程序我调了一天,历经艰辛,终于ac.. 题意 给出一个n个节点的带权树,要求维护操作:1. ...

  5. 【bzoj2152】 聪聪可可

    http://www.lydsy.com/JudgeOnline/problem.php?id=2152 (题目链接) 题意 给出一棵n个节点的带权树,求有多少点对的距离是3的倍数. solution ...

  6. SVN+Jenkins或CCNET环境部署图

    目前来说比较常用的方案:

  7. Bzoj4300 绝世好题

    Time Limit: 1 Sec  Memory Limit: 128 MBSubmit: 1325  Solved: 722 Description 给定一个长度为n的数列ai,求ai的子序列bi ...

  8. QCustomPlot 使用整理

    QCustomPlot 是一个比较小的 QT 图表插件.使用时,我们在程序中写完相关调用的代码后,只需将 QCunstomPlot.cpp 和 QCustomPlot.h 两个文件加入工程,正常编译即 ...

  9. 什么是 WSGI -- Python 中的 “CGI” 接口简介

    今天在 git.oschina 的首页上看到他们推出演示平台,其中,Python 的演示平台支持 WSGI 接口的应用.虽然,这个演示平台连它自己提供的示例都跑不起来,但是,它还是成功的勾起了我对 W ...

  10. Ansible简介

    概述 Ansible是一种自动化运维管理工具,无需安装客户端,通过SSH协议与节点通信. 架构 由上图可以看出Ansible由5个部分组成 Ansible:核心 Inventory:定义管理主机的清单 ...