java数组学习

数组介绍

什么是数组
	数组指的是一种容器,可以用来存储同种数据类型的多个值
	数组容器在存储数据的时候,需要隐式转换考虑
	例如:int类型的数组容器,如下图

数组的定义

1
	数据类型 [] 数组名
	int [] array
2
	数据类型 数组名[]
	int array[]

数组的初始化

初始化:就是在内存中,为数组容器开辟空间,并将数据存入容器中的过程

静态初始化

完整格式: 数据类型[] 数组名 =  new 数据类型[] {元素1.元素2,元素3};
int[] array = new int[]{11,22,33};
简化
int [] array = {11,22,33};
存入以后是地址值
获取地址的数据,地址值的格式含义
[D@776ec8df
[ : 表示是一个数组
I : 表示数组里面元素为int类型
D : 表示数组里面的元素为double类型的
776ec8df : 数组的地址值(16进制值)

数组元素访问

格式:数组名[索引]
public class Main {
    public static void main(String[] args) {
        int[] array = {11,12,13};
        for (int i = 0; i <array.length; i++) {
            System.out.println(array[i]);
        }
    }
}
可以通过循环来进行获取

将数据存到数组中
	数组名[索引] = 具体数据/变量

动态初始化

动态初始化:初始化时只指定数组长度,由系统为数组分配初始值
格式:数据类型[] 数组名 = new 数据类型[数组长度];
范例:int[] arr = new int[3];
   		String[] name = new String[50];
        name[1]="sqq";
        System.out.println(name[0]);

求数组最大值

 int[] sum = {33,5,22,44,55};
        int max = 0;
        for (int i = 0; i < sum.length; i++) {
            if(max < sum[i]){
                max = sum[i];
            }
        }
        System.out.println("最大值是:"+max);

求数组平均值并获取比平均值小的

package org.example;
import java.util.Random;
public class Main {
    public static void main(String[] args) {
        int[] sum = new int[100];
        Random r =new Random();
        for (int i = 0; i < sum.length; i++) {
            int sum_r= r.nextInt(100)+1;
            sum[i] = sum_r;
        }
        int lis_sum = 0;
        for (int i = 0; i < sum.length; i++) {
            lis_sum = lis_sum + sum[i];
        }
        double pjs = (double) lis_sum /sum.length;
        int[] pjs_list = new int[100];
        int pjs_sum = 0;
        for (int i = 0; i < sum.length; i++) {
            if (sum[i] < pjs){
                pjs_list[pjs_sum] = sum[i];
                pjs_sum = pjs_sum + 1;
            }
        }
        System.out.println("数据和是:"+lis_sum);
        System.out.println("平均数是:"+pjs);
        for (int i = 0; i < pjs_list.length; i++) {
            if (pjs_list[i] !=0){
                System.out.println(pjs_list[i]);
                }
        }
    }
}

将数组前后对换

package org.example;
public class Main {
    public static void main(String[] args) {
        int[] sum = {1,2,3,4,5};
        int[] sum1 = new int[5];
        int sum_cs = sum.length -1 ;
        for (int i = 0; i < sum.length; i++) {
            sum1[sum_cs] = sum[i];
            sum_cs =sum_cs - 1;
        }
        sum = sum1;
        for (int i = 0; i < sum.length; i++) {
            System.out.println(sum[i]);
        }
        
    }
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

weixin_51711897

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值