java基础笔记4之理解并学会使用数组

本文深入探讨了Java数组的基础知识,包括数组的声明、初始化、赋值机制以及使用注意事项。通过实例展示了如何创建和操作数组,如创建字符数组、找出整数数组的最大值和平均值、冒泡排序以及顺序和二分查找算法。此外,还提供了添加、删除元素等进阶练习。
摘要由CSDN通过智能技术生成

目录

一、数组基础知识

数组使用注意事项和细节:

二、数组练习

1.创建一个char类型的26个元素的数组,分别放置'A' - 'Z'. 使用for循环访问所有元素并打印出来。提示:char类型数据运算 'A' + 1 -> 'B'

2.请求出一个数组int[]的最大值{4,-1,9,10,23},并得到对应得下标。

3.请求出一个数组的和和平均值。

三、数组赋值机制

四、数组练习(加强版)

1.添加元素,可以不断地添加元素,也可以添加完一个后退出

2.删除元素,不断地删除元素,直到最后一个才不让删。

3.冒泡排序的实现过程

4.顺序查找(在一个字符串数组中查找一个元素)

5.二分法(折半查找)的实现过程(使用前提,有序的数组才可以用二分查找)

1.采用while循环方式进行查找

 2.使用递归实现查找

6.随机生成10个整数(1-100的范围)保存到数组,并倒序打印以及求平均值、求最大值和最大值的下标、并查找里面是否有8


目录

一、数组基础知识

数组使用注意事项和细节:

二、数组练习

1.创建一个char类型的26个元素的数组,分别放置'A' - 'Z'. 使用for循环访问所有元素并打印出来。提示:char类型数据运算 'A' + 1 -> 'B'

2.请求出一个数组int[]的最大值{4,-1,9,10,23},并得到对应得下标。

3.请求出一个数组的和和平均值。

三、数组赋值机制

四、数组练习(加强版)

1.添加元素,可以不断地添加元素,也可以添加完一个后退出

2.删除元素,不断地删除元素,直到最后一个才不让删。

3.冒泡排序的实现过程

4.顺序查找(在一个字符串数组中查找一个元素)

5.二分法(折半查找)的实现过程(使用前提,有序的数组才可以用二分查找)

1.采用while循环方式进行查找

 2.使用递归实现查找

一、数组基础知识

double scores[] //声明数组,这时scores是null
scores = new doubles[5]; //分配内存空间,可以存放数据

数组使用注意事项和细节:

1.数组是多个相同类型数据的组合,实现对这些数据的统一管理
2.数组中的元素可以是任意数据类型,包括基本类型和引用类型,但是不能混用
3.数组创建后,如果没有赋值,有默认值
,如下所示
int             0
short        0
byte        0
long        0
float        0.0
double    0.0
char         \u0000
boolean    false
Strig        null


4.使用数组的步骤 1.声明数组并开辟空间 2.给数组各个元素赋值 3.使用数组 


5.数组的下标是从0开始的


6.数组下标必须在指定范围内使用,否则报:下标越界异常,比如 int[] arr = new int[5];则
有效下标为0-4


7.数组属引用类型,数组型数据是对象(object)


8.低精度到高精度可以自动转换 例如: double[] a ={1 , 2 , 4 , 5, 5.0}  //int类型自动转换成double

二、数组练习


1.创建一个char类型的26个元素的数组,分别放置'A' - 'Z'. 使用for循环访问所有元素
并打印出来。提示:char类型数据运算 'A' + 1 -> 'B'

public class test1 {
    public static void main(String[] args) {

       char[]  ch1 = new char[26];
       int j=0;
        for(char i = 'A'; i <='Z'; i++) {
              ch1[j++] = i;
        }

        for(int i = 0; i < ch1.length; i++){
            System.out.print(ch1[i]+" ");
        }
}}


2.请求出一个数组int[]的最大值{4,-1,9,10,23},并得到对应得下标。

public class test2 {
    public static void main(String[] args) {
        int[] a = {4, -1, 9, 10, 23};
        int index = a[0];
        int j = 0;
        for (int i = 1; i < a.length; i++) {
            if (a[i] > index) {
                index = a[i];
                j = i;
            }
        }
        System.out.println("数组的最大值为" + index + ",其对应的下标为" + j);


    }
}


3.请求出一个数组的和和平均值。

public class test3 {
    public static void main(String[] args) {
        int[] a = {4, -1, 9, 10, 23};

        double sum = 0;
        for (int i = 0; i < a.length; i++) {
            sum += a[i];
        }
        System.out.println("数组的平均值为" + sum / a.length);
    }
}

三、数组赋值机制


1. 基本数据类型赋值,这个值就是具体的数据,而且互相不影响,赋值方式为值拷贝
int n1 = 2;   int n2 = n1;
2. 数组在默认情况下是引用传递,赋的值是地址,赋值方式为引用传达
int[] arr1 = {1,2,3};
int[] arr2 = arr1;

四、数组练习(加强版)

1.添加元素,可以不断地添加元素,也可以添加完一个后退出

public class test1 {


    public static void main(String[] args) {

        int arr1[] = {1, 2, 3, 4, 5};
        int arr2[];
        char ch1 = ' ';
        while (ch1 != 'n') {
            System.out.println("数组可以添加");
            System.out.println("是否进行数组添加,请输入y/n");
            Scanner sc = new Scanner(System.in);
            ch1 = sc.next().charAt(0);
            if (ch1 == 'y') {
                System.out.println("请输入要添加的一个元素:");
                int num = sc.nextInt();
                arr2 = new int[arr1.length + 1];
                arr2[arr1.length] = num;
                for (int i = 0; i < arr1.length; i++)
                    arr2[i] = arr1[i];
                arr1 = arr2;
                System.out.println("添加成功");
                System.out.println(Arrays.toString(arr1));
            } else break;

        }
    }
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值