java与数组

Java与一维数组

1. Java中的数组

在Java中,数组是具有相同数据类型的有序数据的集合,它是一个对象。这些数据使用同一标识符作为数组名;数组中的每个数据称为数组元素,通过下标访问。

2.一维数组的声明

数据类型[] 数组名

或者

数据类型 数组名[]

比如声明一个int类型的数组,数组名Array,格式如下:

int[] Array或者int Array[]

3.一维数组的初始化

(1)静态初始化

指声明数组的同时为数组元素赋值

数据类型[] 数组名={元素1初值,元素2初值,元素3初值,……}

静态初始化数组时无需说明数组大小,系统会根据数组个数自动判断,并分配相应的内存空间。适用于元素个数不多或可列举的情况。

(2)动态初始化

数据类型[] 数组名;

数组名=new 数据类型[数组长度];

说明:上面两行都要写

注意:

1. new关键字用来为数组分配内存空间

2.数组长度应为整型常量或表达式

4.一维数组的使用

访问数组元素:

数组名[数组下标];

Notice(注意):数组下标从0开始,到数组长度-1结束

数组对象有length属性表示数组的长度,可以使用 数组名.length

实例

编写一个程序,找出一堆数组中元素的最大值、最小值并交换。

//实验:数组的用法
//UpsideDown.java
import java.util.Scanner;

public class UpsideDown {
    public static void main(String[] args){
        int count;  // 数组元素的个数,即数组大小
        System.out.println("你想要在一维数组中创建几个元素?");
        Scanner in = new Scanner(System.in);
        count=in.nextInt();
        //初始化数组
        int[] array;
        array=new int[count];

        for(int i=0; i < count; i++){  // 输入数组元素
            System.out.println("请输入第"+(i+1)+"个数: ");
            array[i]=in.nextInt();
        }
        System.out.println("数组排列前的顺序为: ");
        for(int i=0;i < array.length;i++){  // 输出数组元素
            System.out.print(array[i]+" ");
        }
       
        int max=array[0],min=array[0];  //记录最大值,最小值,初始化为第一个元素
        int maxIndex=0,minIndex=0;  // 记录最大值和最小值在数组中的下标,初始化为第一个元素
        for(int i=0;i < array.length-1;i++){  // 找出最大值及其下标,最小值及其下标  
           if(max<array[i+1]){
                max=array[i+1];
                maxIndex=i+1;
           }
           if(min>array[i+1]){
        	min=array[i+1];
        	minIndex=i+1;
           }
        }
        in.close();  // 输入流关闭
        System.out.println();
        System.out.println("数组中元素最大值:"+max);
        System.out.println("数组中元素最小值:"+min);
        int temp;
        // 下面三行交换最大值和最小值的位置
        temp=array[maxIndex];
        array[maxIndex]=array[minIndex];
        array[minIndex]=temp;
        System.out.println("交换最大值和最小值后的顺序为: ");
        for(int i:array){  // 输出数组元素
            System.out.print(i+" ");
        }
    }
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值