学习Java第六天

Java数组

在这里插入图片描述

一维数组

  • 声明
    语法格式:
    数据类型[] 数组名;
    数据类型 数组名[];
    例:int[] myIntArray; int myIntArray[];
  • 创建
    语法格式一:先声明后创建
    int[] arr;
    arr=new int[10];
    语法格式二:声明的同时创建数组
    int[] arr=new int[10];
    注意:数组的长度必须规定 数组会被分配连续的内存空间
  • 初始化
    声明数组的同时给数组赋值,叫做数组的初始化
  • 元素的引用
    语法格式:
    数组名[下标]; 注意:下标从0开始
    在这里插入图片描述
  • 长度
    数组的长度就是初始化时所给数组元素的个数
    int[] a={1,2,3,4,5,6,7,8,9,10}
    属性length表示数组的长度,如 a.length
  • 数组的应用

一维数组的应用

循环为整形数组赋值
package com.array;

public class ArrayDemo {

	public static void main(String[] args) {
		// 声明一个整形数组
		int[] intArray;
		//声明一个字符串类型的数组
		String strArray[];
		//创建数组
		intArray=new int[5];
		strArray=new String[10];
		//声明数组的同时进行创建
		float[] floatArray=new float[4];
		//初始化数组
		char[] ch= {'a','b','c','d'};
		System.out.println("ch数组的长度为:"+ch.length);
		System.out.println("intArray数组的第二个元素为:"+intArray[1]);
		System.out.println("strArray数组的第五个元素为:"+strArray[4]);
		System.out.println("floatArray数组的第最后一个元素为:"+floatArray[floatArray.length-1]);
		//循环为整形数组赋值
		for(int i=0;i<5;i++) {
			intArray[i]=i+1;
		}
		//循环输出整形数组中的元素
		System.out.println("整形数组intArray的元素为:");
		for(int i=0;i<5;i++) {
			System.out.print(intArray[i]+"  ");
		}
	}

}
求数组的累加和
package com.array;

import java.util.Scanner;

public class ArrayDemo1 {

	public static void main(String[] args) {
		// 求整形数组的累加和
		//定义整形数组
		int[] a=new int[5];
		Scanner sc=new Scanner(System.in);
		for(int i=0;i<a.length;i++) {
			System.out.println("请输入第"+(i+1)+"个元素:");
			a[i]=sc.nextInt();
		}
		System.out.print("数组的元素分别为:");
		for(int i=0;i<a.length;i++) {
			System.out.print(a[i]+" ");
		}
		//求数组元素的累加和
		int sum=0;
		for(int i=0;i<a.length;i++) {
			sum=sum+a[i];
		}
		System.out.println();
		System.out.println("数组的元素和为:"+sum);
	}

}
求数组中能被3整除的数,并打印输出
package com.array;

public class AarryDemo2 {

	public static void main(String[] args) {
		// int[] a=new int[15];
		int[] a= {1,2,6,12,15,16,17};
		//定义一个整形数组并赋值
		//循环遍历数组,找出能被3整除的元素并打印输出
		for(int i=1;i<7;i++) {
			if(a[i]%3==0) {
				System.out.println(a[i] );
			}
		}
	}
}
求数组元素的最大值
package com.array;

public class ArrayDemo3 {

	public static void main(String[] args) {
		// 求数组元素的最大值
        int[] a= {34,27,58,97,35,56};
        int max=a[0];
        for(int i=1;i<a.length;i++) {
        	if(max<a[i])
        		max=a[i];
        }
        System.out.println("数组的最大值为:"+max);
	}
}

增强型for循环

  • 又叫foreach循环
  • int[] arr={1,2,3,4,5};
  • for(int n:arr)
  • System.out.println(n);
  • 把arr数组里的每个元素依次赋值给n,依次输出

冒泡排序

package com.array;

public class SortDemo {

	public static void main(String[] args) {
		// 冒泡排序
		int[] a= {34,53,12,32,56,17};
	    System.out.println("排序前的的数组元素为:");
	    for(int n:a) {
	    	System.out.print(n+"   ");
	    }
	    System.out.println();
	    int temp;
	    for(int i=0;i<a.length;i++) {
	    	//内重循环控制每趟排序
	    	for(int j=0;j<a.length-1;j++) {
	    		if(a[j]>a[j+1]) {
	    			temp=a[j];
	    			a[j]=a[j+1];
	    			a[j+1]=temp;
	    		}
	    	}
	    }
	    System.out.println("从小到大排序输出后的数组元素为:");
	    for(int n:a) {
	    	System.out.print(n+"   ");
	    }
	}
}

总结

注意的问题
  • 数组是引用数据类型
  • 创建数组时,会开辟连续的内存空间
  • 数组长度使用length属性获取
  • 数组元素下标从0开始
  • 数组下标越界问题
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值