首页 > 编程语言 > 详细

韩顺平循序渐进学java 第16讲 数组

时间:2016-03-05 23:48:49      阅读:418      评论:0      收藏:0      [点我收藏+]

16.1 引出问题

数组可以存放多个同一类型数据。

16.2 数组用法

16.2.1 程序员用法

1、数组定义

数据类型 数组名[]=new 数据类型[大小];

int a[]=new int[5];

2、数组引用(使用)

数组名[下标]

a[2]

16.1.2 没事找事用法

第一步:声明数组

数据类型 数据名[]; 也可以 数据类型[] 数据名;

int a[]; 或者 int[] a;

第二步:创建数组

语法:数组名=new 数据类型[大小];

a=new int[10];

第三步:数组引用(使用)

语法:数组名[下标]

a[7]

16.1.3 古板用法

第一步:初始化数组

语法:数据类型 数组名[]=(元素值,元素值...)

int a[]={2,5,6,7,8,89,90,34,56}

第二步:数组的引用(使用)

语法:数组名[下标]

a[7]

16.3 对象数组

16.3.1 引出问题

请思考,既然intfloatdouble...等都可以有数组,那么可不可以有对象数组呢?

对前面的养鸡场的问题进行升级,题目要求如下:

一个养狗场有4只狗,分别是:

名字

重量

花花

4.5kg

白白

5.6kg

黑黑

78kg

红红

9.0kg

请编写一个程序,可以计算它们的平均体重,可以找出体重最大和最小的狗的名字,可以通过输入狗的名字,查找它的体重。

 

对象数组使用演示代码如下:

 1 /**日期:2016-03-05
 2  * 功能:对象数组使用演示
 3  */
 4 package test;
 5 import java.io.*;
 6 public class Demo1 {
 7 
 8     public static void main(String[] args) throws Exception {
 9         // TODO Auto-generated method stub
10         
11         //定义一个可以存放四只狗的对象数组
12         Dog dogs[]=new Dog[4];
13 /*        //常规方法
14         //给各个狗赋初值
15         dogs[0]=new Dog(); //这个语句非常重要,因为内存中dogs[0]等默认为null,必须新开辟一个内存区
16         dogs[0].setName("花花");
17         dogs[0].setWeight(4.5f);    */
18         
19         //从控制台输入各个狗的信息
20         InputStreamReader isr=new InputStreamReader(System.in);
21         BufferedReader br=new BufferedReader(isr);
22         for(int i=0;i<4;i++)
23         {
24             dogs[i]=new Dog();
25             System.out.println("请输入第"+(i+1)+"个狗的名字:");
26             String name=br.readLine(); //异常
27             dogs[i].setName(name);
28             System.out.println("请输入第"+(i+1)+"个狗的重量:");
29             String s_weight=br.readLine(); //异常
30             float weight=Float.parseFloat(s_weight); //java默认输入的是字符串,需要转换
31             dogs[i].setWeight(weight);
32         }
33         
34         int allWeight=0;
35         for(int i=0;i<4;i++)
36         {
37             allWeight+=dogs[i].getWeight();
38         }
39         float aveWeight=allWeight/dogs.length;
40         System.out.println("平均体重为:"+aveWeight);
41     }
42 
43 }
44 
45 class Dog
46 {
47     public String getName() {
48         return name;
49     }
50     public void setName(String name) {
51         this.name = name;
52     }
53     public float getWeight() {
54         return weight;
55     }
56     public void setWeight(float weight) {
57         this.weight = weight;
58     }
59     private String name;
60     private float weight;
61 }

 

运行结果如下:

 1 请输入第1个狗的名字:
 2 花花
 3 请输入第1个狗的重量:
 4 12
 5 请输入第2个狗的名字:
 6 白白
 7 请输入第2个狗的重量:
 8 13
 9 请输入第3个狗的名字:
10 黑黑
11 请输入第3个狗的重量:
12 11
13 请输入第4个狗的名字:
14 红红
15 请输入第4个狗的重量:
16 12
17 平均体重为:12.0

 

韩顺平循序渐进学java 第16讲 数组

原文:http://www.cnblogs.com/PistonType/p/5246218.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!