Java中的数组

Java中的数组

数组想必学过编程的人都不陌生,它本质上就是一群“批量”创建的相同类型的变量。但是Java中的数组和C语言还是有一定的区别的,希望大家不要搞混。

目录

Java中的数组

一、创建数组

第一种

第二种

第三种

二、数组的使用

1、访问元素

2、获取长度

3、遍历数组

三、数组作为方法的参数


一、创建数组

Java中创建数组主要有3种方法。

第一种

        int[] a = {1,2,3,4,5};

这是一种类C语言的写法,C语言中小括号和数组名挨着,而且小括号里必须有数字。

Java中也可以int a[] = {1,2,3,4,5};但是并不推荐,因为本质上一个整型数组的类型就是int[],C语言那种做法是不得已而为之,可以算是一个惊天大bug。

Java中不可以int[5] a = {1,2,3,4,5};这样写会报错。

第二种

int[] b = new int[]{1,2,3,4,5};

new是创建对象时使用的关键词,上面这个语句的意思是创建一个数组,它的各个元素的值为1,2,3,4,5,数组名字叫b。

第三种

int[] c = new int[5];

这个方式指定了数组的长度,它的各个元素都被初始化为0了。

需要注意的是[]和{}中不能同时出现值,这样写会报错:

二、数组的使用

1、访问元素

Java中访问数组元素使用运算符[],这一点和C语言类似,下标也是从零开始,如果越界会抛出异常(错误更清晰,但是影响效率)。

数组下标越界异常。

2、获取长度

Java中获取数组的长度的方法为数组名.length

        int[] a = {1,2,3,4,5};
        System.out.println("该数组长度为"+a.length);

3、遍历数组

Java中除了使用循环外还提供了一种for-each语句

        int[] a = {1,2,3,4,5};
        for (int x : a) {
            System.out.println(x);
        }

x依次表示数组a中的元素,不能通过x修改a中元素的值

三、数组作为方法的参数

我们知道C语言中,当一个数组作为函数的参数时往往要传入数组的长度作为配合的参数,这是因为在C语言中数组和指针其实本质上是一类东西。

这里可以看我的另一篇博客。https://blog.csdn.net/qq_49044908/article/details/109313243

由于Java中数组长度属性length的引入,我们可以省掉这一部分,更加方便我们的开发。

我们看下面一个冒泡排序的例子:

Java中只需要传入一个数组作为参数就可以了

    //给定一个整型数组, 实现冒泡排序(升序排序)
    public static int[] bubbleSort(int[] a){
        for(int i = a.length - 1;i > 0;i--){
            for(int j = 0;j < i;j++){
                if(a[j] > a[j+1]){
                    int tmp = a[j];
                    a[j] = a[j+1];
                    a[j+1] = tmp;
                }
            }
        }
        return a;
    }

C语言中还需要传入该数组的长度

void bubbleSort(int a[],int n)//n为数组a的元素个数
{
    for(int i=0; i<n-1; i++)
    {
        for(int j=0; j<n-1-i; j++)
        {
            if(a[j] > a[j+1])
            {
                int temp = a[j];
                a[j] = a[j+1];
                a[j+1]=temp;
            }
        }
    }
}

 

 

 

今天的内容就分享到这里,希望大家多多评论,一起提高。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值