Java基础| 数组

目录

目录

一维数组

1.一维数组的声明

声明一个数组就是要确定数组名、数组的维数和数组元素的数据类型。一维数组的声明格式:类型标识符[ ] 数组名。例如:

double[] myList;
float[] name;
double[] score;

2.一维数组的初始化

用new初始化二维数组

用new运算符初始化数组时,只指定数组元素的个数,为数组分配存储空间,并不给数组元素赋初值。用new运算符初始化数组的格式是:数组名 = new 类型标识符[元素个数]或者是类型标识符 数组名[] = new 类型标识符[元素个数]。例如:

int[] score;
score = new int[10];

int[] score = new int[10];
赋初值初始化数组

可以在声明数组的同时给数组元素赋初值,所赋初值的个数决定数组元素的数目。赋值的格式是:类型标识符 数组名[] = {赋值表},其中赋值表是用逗号隔开的初始值,例如:

int[] score = {1,2,3,4,5,6,7,8,9};

注意在Java中数组的下标也是从0开始的,即score[0] = 1

多维数组

1.二维数组的声明

二维数组的声明方式与一维数组相似,只是要给出两对方括号。格式是:类型标识符[][] 数组名。举例来说:

int score[][];
int num[][];

2.二维数组的初始化

二维数组的意义是类似于矩阵的行列。它的初始化有两种方式,下面来分别介绍。

用new初始化二维数组

用new运算符初始化二维数组,只指定数组的行数和列数,为数组分配空间而并不为数组元素赋初值。赋值的格式是:数组名 = new 类型标识符[行数][列数];举例来说:

int a[][];
a = new int[3][4];

int a = new int[3][4];
赋初值初始化数组

可以在声明数组的同时给数组元素赋初值,所赋初值的个数决定数组元素的数目。赋值的格式是:类型标识符 数组名[][] ={ {赋值表},{赋值表},{赋值表}......},其中赋值表是用逗号隔开的初始值,例如:

int grade[][] = {{1,2,3},{4,5,6},{7,8,9}};
/*该二维数组的初始值是分为4组,所以是由4行元素;由于每一组中是有3个元素
所以该数组是有3列*/

数组的基本操作

1.数组的复制

如果要将一个数组的所有元素复制到另一个数组,则可以通过循环语句对逐个元素进行赋值,也可以直接将一个数组赋给另一个数组。

public class Test{
    public static void main(String args[]){
      int[] a = {1,2,3,4,5};
      int[] b = new int[5];
      for(int i=0;i<5;i++){
          b[i]=a[i];
      }
    }
}

2.数组的输出

数组的输出通常也是使用循环来使得逐个元素进行输出,例如:

public class Test{
    public static void main(String args[]){
      int[] a = {1,2,3,4,5};
      for(int i=0;i<5;i++){
          System.out.println(a[i]);
      }
    }
}

数组参数

在Java中是允许方法的参数是数组。但是在使用数组参数时,需要注意以下事项:
(1)在形参表,数组名后面的括号不能够省略,但不需要给出数组元素的个数。
(2)在实参中,数组名后面不需要括号。
(3)数组做参数时,传递的是地址而不是值。

//求平均值
public class Test{
    static float arrayAverage(int[] d){
        float average = 0;
        for(int i=0;i<d.length;i++){
            average = average+d[i];
        }
        average = average/d.length;
        return average;
    }

    public static void main(String args[]){
        int[] a = {1,2,3,4,5};
        System.out.println(arrayAverage(a));
    }
}

字符串

1.创建字符串

字符串变量是String类的对象。如果要使用字符串变量,可以使用String类来实现。声明字符串变量的格式String 变量名;而初始化字符串变量的格式是:变量名 = new String(" ");,例如:

String s;
s = new String("China");

字符串在声明完之后也可以直接赋值,例如:

String s;
s = "China";

2.字符串操作

访问字符串

在String类中有很多成员方法,下面来介绍一些常用的方法。

(1)int length()
length()方法是返回字符串的长度,返回值的数据类型是int。例如:

String s = "Hello";
System.out.println(s.length());  //输出为5

(2)char charAt(int index)
charAt(int index)方法的功能是返回字符串第index个字符,返回类型是char。例如:

String s = "Hello";
System.out.println(s.charAt(0));  //返回的是H

(3)int indexOf(char ch)
indexOf(int ch)方法是返回字符串中字符ch第一次出现的位置,返回类型是int。

String s = "Hello";
System.out.println(s.indexOf(e));  //返回的是1
字符串比较

在Java中字符串的比较是从首字符开始逐个向后比较对应字符,如果发现了一对不同的字符,比较过程结束,该对字符的大小关系便是两个字符串的大小关系。

下面介绍一些用于进行字符串比较的几个常用的成员方法:

(1)equals(Object obj)
方法equals(Object obj)的功能是将该字符串与obj表示的字符串进行比较,如果两种相等返回布尔类型true,否则返回false。

String s = "Hello";
s.equals("hello");  //因为H!=h,所以返回false

(2)compareTo(String str)
compareTo(String str)的方法是将该字符串与str表示的字符串进行大小比较,返回值为int。如果该字符串比str表示的字符串大,返回正值,否则返回负值,相等时返回0。

String s = "Hello";
s.compareTo("hello");  //返回的值为正

3.字符串数组

如果要表示一组字符串,可以通过字符串数组来实现,实现的方法和普通的数组类似。

String[] str = new String[4];
str[0] = "BJ";
str[1] = "SH";
str[2] = "CD";
str[3] = "WH";
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容