Java数组应用

静态初始化数组

代码结构

简化格式
//int类型  
    int[] arr = {1,2,3,4,5};
//String类型
    String[] arr = {"欢","迎","光","临"};
//double类型
    double[] arr = {1,2,3,4,5};
//还包括long,short,char,boolean等类型
完整格式
//double类型
    double[] arr = new double arr[]{1,2,3,4,5};
//int类型
    int[] arr = new int[]arr{1,2,3,4,5};
 //String类型
    String[] arr = new String[]{"哈","哈","哈"};

访问数组

//输出
    System.out.println(arr[1]);//输出数组中第二个元素
//赋值
    arr[1] = 10;
    System.out.println(arr[1]);

输出数组长度

//使用length输出数组长度
System.out.println(arr.length);

动态初始化数组

代码结构

//int类型
    int[] arr = new int[5];
//double类型
    double[] arr = new double[5];
//String类型
    String[] arr = new String[5];
注意
    //还包括long,short,char,boolean等类型

    //double[] arr = new double arr[5]{1,2,3,4,5};
    是错误的,不能与静态初始化混用

访问数组

//赋值   
    int[] arr = new int[3];
    arr[0] = 1;
    arr[1] = 10;
    arr[2] = 100;
//输出
    System.out.println(arr[1]);

元素默认值

    int[] arr = new int[3];
    System.out.println(arr[2]);
//输出0
//short,long,char默认值也是0

    double[] arr1 = new double[3];
    float[] arr2 = new float[3];
    System.out.println(arr1[2]);
    System.out.println(arr2[2]);
//输出0.0

    String[] arr = new String[3];
    System.out.println(arr[2]);
//输出NULL

    boolean[] arr = new boolean[3];
    System.out.println(arr[2]);
//输出false

注意

1.数组元素的位置标号从零开始

int[] arr = { 1 , 2 , 3}; 

          第    0   1   2    位

2.数据类型[] 数组名也可以写成数据类型 数组名[]

        int[] arr = ...;

        int arr[] = ...;

        两者的效果是一样的

3.程序运行过程中,数组的长度类型无法改变

4. double[] arr = new double arr[5]{1,2,3,4,5};    是错误的,动态与静态初始化不能混用

应用

1、数组的遍历

package blackhorse;

public class Arrary {

	public static void main(String[] args) {

        //静态数组
	    int[] arr1 = {1,2,3,4,5};    
	    for(int i=0;i<arr1.length;i++){
	        System.out.println(arr1[i]);
		}

        //动态数组
	    int[] arr2 = new int[3];
	    arr2[0]= 1;
	    arr2[1]= 10;
	    arr2[2]= 100;
	    for(int j=0;j<arr2.length;j++){
	        System.out.println(arr2[j]);
	    }
	}
}

运行结果

2、数组求和

package blackhorse;

public class Arrary {

	public static void main(String[] args) {
	    //数组求和
	    int[] arr1 = {1,2,3,4,5};   
	    int sum = 0;
	    for(int i=0;i<arr1.length;i++){
	    	sum += arr1[i];
	    }
        System.out.println(sum);
	}
}

 运行结果

3、找出数组最大值

 

package blackhorse;

public class Arrary {

	public static void main(String[] args) {

	    int[] arr1 = {1,2,3,4,5};    
        int max = arr1[0];
        int maxId = 0;
	    for(int i=1;i<arr1.length;i++){
	        if(max<i) {
	        	max = arr1[i];
	        	maxId = i;
	        }
		}
	    System.out.println("数组最大值为:"+max+"是第"+(maxId+1)+"个元素");
 
	}
}

运行结果 

 

 

4、随机排列数组中的元素

package blackhorse;

import java.util.Random;
public class Arrary {

	public static void main(String[] args) {

	    int[] arr1 = {1,2,3,4,5};    
	    Random r = new Random();
	    int index = r.nextInt(arr1.length);
	    int temp;//生成一个临时变量
	    for(int i =0;i<arr1.length;i++) {
	    	temp = arr1[index];
	    	arr1[index] = arr1[i];
	    	arr1[i] = temp;
	    }
	    for(int i=0;i<arr1.length;i++){
	        System.out.println(arr1[i]);
		}
	}
}

运行结果

冒泡排序

package blackhorse;

import java.util.Random;
public class Arrary {

	public static void main(String[] args) {
	    int[] arr1 = {1,2,3,4,5};    
	    int n = 1;
	    for(int i=0;i<arr1.length;i++) {
	    	for(int j = (arr1.length-1);j>=n;j--) {
	    		if(arr1[i]<arr1[j]) {
	    			temp = arr1[i];
	    			arr1[i] = arr1[j];
	    			arr1[j] = temp;

	    		}
	    	}
	    	n++;
	    }
	    for(int i=0;i<arr1.length;i++){
	        System.out.println(arr1[i]);
		}
	}
}

运行结果

 

 

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值