一维数组

写一段程序来阐述数组简单的应用
package com.liaojianya.chapter1;

import java.util.Random;

/**
 * This program demonstrates the use of array.
 * @author LIAO JIANYA
 * 2016年7月20日
 */
public class ArrayAssignment8_3
{
	public static void main(String[] args)
	{
		Random rand = new Random();
		int[] a = null;
		int[] b = null;
		a = new int[rand.nextInt(10) + 1];
		b = a;
		
		System.out.println("the length of array_a : " + a.length);
		System.out.println("the length of array_b : " + b.length + "
");
		
		for(int i = 0; i < a.length; i++)
		{
			a[i] = rand.nextInt(100);
			System.out.print("a[" + i + "] = " + a[i] + "	");
			System.out.println("b[" + i + "] = " + b[i]);
		}
		
		if(a.length == 1)
		{
			System.out.println("The array_a only has one element.
"
					+ "So the max value of array_a is same as the min value!");
		}
		else
		{
			int max = a[0];
			int min = a[0];
			
			
			for(int i = 0; i < a.length; i++)
			{
				if(a[i] > max)
				{
					max = a[i];
				}
				
				else if(a[i] < min)
				{
					min = a[i];
				}
			}
			
			System.out.println("
The max value of array_a is : " + max);
			System.out.println("The min value of array_a is : " + min);
			
		}
		

	}
}

  运行结果1:

the length of array_a : 1
the length of array_b : 1

a[0] = 70	b[0] = 70
The array_a only has one element.
So the max value of array_a is same as the min value!

  运行结果2:

the length of array_a : 7
the length of array_b : 7

a[0] = 39	b[0] = 39
a[1] = 90	b[1] = 90
a[2] = 49	b[2] = 49
a[3] = 35	b[3] = 35
a[4] = 33	b[4] = 33
a[5] = 12	b[5] = 12
a[6] = 75	b[6] = 75

The max value of array_a is : 90
The min value of array_a is : 12

  分析:

  1)代码行:b = a;表示将a数组的引用赋值给数组b,这时a和b是指向同一个数组对象。即“一个数组,两个名字”

  2)创建一个Random类型的对象rand,此对象可以灵活的产生随机数,代码行a = new int[rand.nextInt(10)+1]; 在rand.nextInt()后加1,可以避免出现0个元素数组。

若不加1,若随机到0,则会显示:

the length of array_a : 0
Exception in thread "main" the length of array_b : 0

java.lang.ArrayIndexOutOfBoundsException: 0
	at com.liaojianya.chapter1.ArrayAssignment8_3.main(ArrayAssignment8_3.java:30)

  3)将变量min与max初值设为数组的第一个元素后,再逐一的与数组中的各元素相比,比min小的就将该元素值赋给min存放,使得min中的值始终保持最小;同理,当该元素大于max时,就将该元素赋给max存放,使得max的值保持最大。

原文地址:https://www.cnblogs.com/Andya/p/5687010.html