精华内容
下载资源
问答
  • 2021-10-07 16:06:23

    java建立数组和C语言不大一样,比如C语言中建立一个4个位置的一维数组方法:int a[4];再用scanf输入数据就可以,或者在定义的时候就可以赋值 int a[4]={1,22,5,63};申明和创建是一起的

    而Java不一样,先申明 int boy[],char cat[][];   在这里【】里面不能赋值,我们刚刚申明了两个数组  boy 和 cat;再创建数组 boy=int[4];cat=char[4][4];换句话说,申明和创建是分开的;申明之后必须用new运算符分配内存空间

    另一种Java创建数组的方法,我个人比较喜欢这种 申明和创建一起完成   int bit[]=new int[4]; float boy[][]=`new float[3][4];

    二维数组每一行的长度可以不一样  int a[][]=new [3][];这里每一行的长度没有确定即内存空间没有分配;所以该数组还不能使用;必须在分配内存。

    a[0]=new int[5];

    a[1]=new int[8];

    a[2]=new int[3];

    int a[][]={{1},{12,5},{14,25,6},{5},{25,9}}

    和C语言不同,Java允许使用int型变量的值指定数组元素的个数:int size=30;

    double number=new double[size];

    更多相关内容
  • Java创建数组的方法

    千次阅读 2022-04-03 21:11:56
    Java创建数组的方法大致有三种 说明:这里以int为数据类型,以arr为数组名来演示 一、声明并赋值 int[] arr = {1,2,4, …}; 注意这里的花括号不是语句块,而且而且花括号后的分号也不能省,…不是元素意思是可以指定...

    最近学Java,一点小心得,希望和大家分享一下,第一次写文章,写的不好希望大家谅解,当然我也会尽力写好这篇文章!

    Java创建数组的方法大致有三种

    说明:这里以int为数据类型,以arr为数组名来演示

    一、声明并赋值

    int[] arr = {1,2,4, …};
    注意这里的花括号不是语句块,而且而且花括号后的分号也不能省,…不是元素意思是可以指定多个元素

    二、声明数组名开辟空间并且赋值

    int[] arr;
    arr = new int[]{1,2,3, …};

    三、声明数组时指定元素个数然后赋值

    int[] arr1= new int[3];
    注意:最大元素下标为2,并且所有的元素值均为0
    赋值一般用for循环

    四、在以上的基础上创建多维数组

    1. int[][] arr = {{1,2,3},{4,5,6},{7,8,9}}; //每个子数组元素个数不要求均相同
    2. int[][] arr = new int[m][n]; //其中n可以省略,在创建的时候可以指定
    3. int[][][] arr = new int[m][n][q]; //同样其中n、q可以省略

    总结

    • 无论那种方法声明必须有 :数据类型 [ ] , 如:int[ ]
    • 创建多维数组时,new后面的第一个方括号中的元素数量总不能省略
    • “new 数据类型[]{}”创建数组时,其中花括号可以省去,但要在“[ ]”中填写数组的个数

    各个创建数组的方法使用演示如下

    方法一:

    int[] arr2 = {10,20,30};
      for(int element:arr2) {
       System.out.print(element+"
    ");//其中 "
    " 是换行
      }
    

    输出结果:

    10
    20
    30
    

    方法二:

    char[] arr4 ;  //char型输入时要用单引号(')引着!
      arr4 = new char[] {'a','b','c'};
      for(char element:arr4) {
       System.out.print(element + "  ");
      }
    

    输出结果:

    a   b   c 
    

    方法三:

      int[] arr = new int[10];
         //换成i<10 或i<=9   因为 arr[10]不存在  强行调用会出错(溢出)!
      for(int i = 0;i<=9;i++) {
       arr[i]=i;
       System.out.print(arr[i]+"  ");
      }
    

    输出结果:

    0 1 2 3 4 5 6 7 8 9 
    

    方法四

    1.
    int[][] arr = {{1,2,3},{4,5,6},{7,8,9}};
    矩阵形式输出为:
    1 2 3
    4 5 6
    7 8 9
    
    
    1.
    int[][] arr = new int[m][n];
    在赋值时使用for循环
    for(int i=0;i<m;i++){
    	for(int j=0;j<n;j++){
    		arr[i][j] = int值;	
    	}
    }
    若声明时省略n,赋值时须在内层循环中生成新一维数组
    for(int i=0;i<m;i++){
    	arr[i] = new int[数量];
    }
    

    二维以上的数组使用的不多,又因为使用方法同二维基本相同,所以在这里就不再演示了。

    内容扩展

    1. for each语句(增强性for循环)

    用于对数组或实现Iterator接口的列表(ArrayList、LinkedList)集合(Set)等容器对象进行遍历。

    格式:

    for (数据类型 : emelent){
     	System.out.println(emelent);
    }
    

    应用代码:

    int[] arr2 = {10,20,30};
      for(int element:arr2) {
       System.out.print(element+"
    ");
      }
    

    运行结果:

    10
    20
    30
    

    2.length属性 与 length()方法

    二者区别:

    • length属性是针对Java中的数组来说的,要求数组的长度可以用其length属性
    • length()方法是针对字符串来说的,要求一个字符串的长度就要用Java的length()方法
    • Java中的size()方法是针对泛型集合(Set)或列表(List)说的,如果想看这个泛型容器中有多少元素,就调用此方法

    应用代码:

    for(int i=0;i<arr5.length;i++) {
       arr5[i]=i;
    }
    

    3.Arrays的toString方法

    作用: 将数组的元素生成字符串,数组的各个元素使用方括号括着 [ ]
    格式: Arrays.toString(数组名称)
    注意: 此方法不能用于直接获得二维数组
    应用代码:

    int[] arr = {111,222,333};
    System.out.println(Arrays.toString(arr));
    

    运行结果:

    [111, 222, 333]
    

    希望以上对大家有帮助!


    想了解作者更多,请移步我的个人网站,欢迎交流、留言~
    极客技术空间:https://elltor.com/

    展开全文
  • 什么是数组1.1 数组的定义1.2 数组的创建与初始化1.2.1数组的动态初始化1.2.2 数组的静态初始化1.3 数组的使用1.3.1 获取一个数组的长度(最多保存的元素个数)1.3.2 如何访问数组元素1.3.3 遍历数组中的每个元素 数组...

    引言:

    我们之前创建两个整型变量可以用 int a = 10;int b = 20;

    创建4个整型变量,也可以一行行定义变量,

    假设我现在要一次性创建 1w 个整型变量,这种时候我们就需要用到数组这个结构了~

    数组

    引言:

    我们之前创建两个整型变量可以用 int a = 10;int b = 20;

    创建4个整型变量,也可以一行行定义变量,

    假设我现在要一次性创建 1w 个整型变量,这种时候我们就需要用到数组这个结构了~

    1.什么是数组

    1.1 数组的定义

    数组本质上就是让我们能"批量"创建相同类型的变量.

    一次性定义N个数据类型相同的变量,我们把这种结构称之为数组

    1.2 数组的创建与初始化

    数组的初始化方式有两种:分别为数组的动态初始化,和数组的静态初始化

    1.2.1数组的动态初始化

    例:第一种动态初始化方法

    //数据类型[] 数组名称 = new 数组类型[] {初始化数据};   ps:初始化数据可选
    int[] arr = new int[] {1,2,3,4,5};
    //在创建数组时,每个元素同时赋值.
    

    第二种动态初始化方法

    //数据类型[] 数组名称 = new 数据类型[num];   num指当前数组元素的最大个数 
    int[] arr = new int[5]
    //在创建数组时,若没有使用来初始化每个元素的值,每个元素都是该数据类型的默认值(0)
    //可以理解为	int[] arr = new int[] {0,0,0,0,0};
    

    1.2.2 数组的静态初始化

    例:

    //数据类型[] 数组名称 = {初始化数据};
    int[] arr = {1,2,3,4,5};
    

    这种写法是Java中的一种语法糖(语法糖∶只存在编译期之前的语法,编译器为了方便程序员简化写法),在 javac 编译之后,就会变成动态初始化的写法

    上图是编译之前写法

    下图是编译之后写法

    image-20220409201731535

    image-20220409201747053

    1.3 数组的使用

    1.3.1 获取一个数组的长度(最多保存的元素个数)

    使用数组名称.length

    int[] arr = new int[5];//长度就是5,我如何拿到这个5呢

    arr.length;

    int[] arr1 = new int[] {1,3,5,7,9};//长度也是5,

    arr1.length;

            int[] arr = new int[5];
            int length = arr.length;
            System.out.println(length);
    		//执行结果均为 5 
    

    1.3.2 如何访问数组元素

    使用 -> 数组的名称[元素的索引]

    //数组的索引从0开始,最后一个元素的索引是 arr1.length - 1

    例如: 要获取数组的第一个元素

    int[] arr = new int[5];
    //用 arr[0]; 获取第一个数组元素
    

    注意:

    如果访问了一个数组索引并不存在的元素会咋样?

    image-20220409203741905

    1.3.3 遍历数组中的每个元素

    数组的遍历分有两种方法

    方法一:用循环遍历数组

            int[] arr1 = new int[]{1,2,3,4,5};
            for (int i = 0; i < arr1.length; i++) {
                System.out.print(arr1[i] + ",");
            }
    

    注意:

    arr[i] 确实拿到了每个数组的元素

    此处的 i 表示数组中每个元素的索引下标,可以修改数组中对应元素的值

    方法二:用foreach方法遍历数组

            for (int i:arr1) {
                System.out.print(i + ",");
            }
    

    注意:

    此处的 i 指的是从数组的第一个元素开始取值,第一次把第一个元素的值复制一份给 i ,第二次循环把第二个元素的值复制一份给 i ,依次类推,直到整个数组都遍历结束.

    只能读取数组的元素值,无法修改.

    i 是每个数组元素的值的拷贝,不是实实在在的数组元素,无法修改数组的元素值.

    image-20220409210806857

    展开全文
  • Java数组的定义和使用

    2021-02-12 08:58:48
    Java 中定义数组的语法有两种:type arrayName[];type[] arrayName;type 为Java中的任意数据类型,包括基本类型和组合类型,arrayName为数组名,必须是一个合法的标识符,[ ] 指明该变量是一个数组类型变量。例如:...

    Java 中定义数组的语法有两种:

    type arrayName[];

    type[] arrayName;

    type 为Java中的任意数据类型,包括基本类型和组合类型,arrayName为数组名,必须是一个合法的标识符,[ ] 指明该变量是一个数组类型变量。例如:

    int demoArray[];

    int[] demoArray;

    这两种形式没有区别,使用效果完全一样,读者可根据自己的编程习惯选择。

    与C、C++不同,Java在定义数组时并不为数组元素分配内存,因此[ ]中无需指定数组元素的个数,即数组长度。而且对于如上定义的一个数组是不能访问它的任何元素的,我们必须要为它分配内存空间,这时要用到运算符new,其格式如下:

    arrayName=new type[arraySize];

    其中,arraySize 为数组的长度,type 为数组的类型。如:

    demoArray=new int[3];

    为一个整型数组分配3个int 型整数所占据的内存空间。

    通常,你可以在定义的同时分配空间,语法为:

    type arrayName[] = new type[arraySize];

    例如:

    int demoArray[] = new int[3];

    数组的初始化

    你可以在声明数组的同时进行初始化(静态初始化),也可以在声明以后进行初始化(动态初始化)。例如:

    // 静态初始化

    // 静态初始化的同时就为数组元素分配空间并赋值

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

    StringstringArray[] = {"微学苑", "http://www.weixueyuan.net", "一切编程语言都是纸老虎"};

    // 动态初始化

    float floatArray[] = new float[3];

    floatArray[0] = 1.0f;

    floatArray[1] = 132.63f;

    floatArray[2] = 100F;

    数组引用

    可以通过下标来引用数组:

    arrayName[index];

    与C、C++不同,Java对数组元素要进行越界检查以保证安全性。

    每个数组都有一个length属性来指明它的长度,例如 intArray.length 指明数组 intArray 的长度。

    【示例】写一段代码,要求输入任意5个整数,输出它们的和。

    import java.util.*;

    public classDemo {

    public static void main(String[] args){

    int intArray[] = new int[5];

    long total = 0;

    int len = intArray.length;

    // 给数组元素赋值

    System.out.print("请输入" + len + "个整数,以空格为分隔:");

    Scannersc = new Scanner(System.in);

    for(int i=0; i

    intArray[i] = sc.nextInt();

    }

    // 计算数组元素的和

    for(int i=0; i

    total += intArray[i];

    }

    System.out.println("所有数组元素的和为:" + total);

    }

    }

    运行结果:

    请输入5个整数,以空格为分隔:10 20 15 25 50

    所有数组元素的和为:120

    数组的遍历

    实际开发中,经常需要遍历数组以获取数组中的每一个元素。最容易想到的方法是for循环,例如:

    int arrayDemo[] = {1, 2, 4, 7, 9, 192, 100};

    for(int i=0,len=arrayDemo.length; i

    System.out.println(arrayDemo[i] + ", ");

    }

    输出结果:

    1, 2, 4, 7, 9, 192, 100,

    不过,Java提供了”增强版“的for循环,专门用来遍历数组,语法为:

    for( arrayTypevarName: arrayName ){

    // Some Code

    }

    arrayType 为数组类型(也是数组元素的类型);varName 是用来保存当前元素的变量,每次循环它的值都会改变;arrayName 为数组名称。

    每循环一次,就会获取数组中下一个元素的值,保存到 varName 变量,直到数组结束。即,第一次循环 varName 的值为第0个元素,第二次循环为第1个元素......例如:

    int arrayDemo[] = {1, 2, 4, 7, 9, 192, 100};

    for(int x: arrayDemo){

    System.out.println(x + ", ");

    }

    输出结果与上面相同。

    这种增强版的for循环也被称为”foreach循环“,它是普通for循环语句的特殊简化版。所有的foreach循环都可以被改写成for循环。

    但是,如果你希望使用数组的索引,那么增强版的 for 循环无法做到。

    二维数组

    二维数组的声明、初始化和引用与一维数组相似:

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

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

    a[0][0] = 12;

    a[0][1] = 34;

    // ......

    a[1][2] = 93;

    Java语言中,由于把二维数组看作是数组的数组,数组空间不是连续分配的,所以不要求二维数组每一维的大小相同。例如:

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

    int a[ ][ ] = new int[2][ ];

    a[0] = new int[3];

    a[1] = new int[5];

    【示例】通过二维数组计算两个矩阵的乘积。

    public classDemo {

    public static void main(String[] args){

    // 第一个矩阵(动态初始化一个二维数组)

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

    // 第二个矩阵(静态初始化一个二维数组)

    int b[][] = { {1,5,2,8}, {5,9,10,-3}, {2,7,-5,-18} };

    // 结果矩阵

    int c[][] = new int[2][4];

    // 初始化第一个矩阵

    for(int i=0; i<2; i++)

    for(int j=0; j<3 ;j++)

    a[i][j] = (i+1) * (j+2);

    // 计算矩阵乘积

    for (int i=0; i<2; i++){

    for (int j=0; j<4; j++){

    c[i][j]=0;

    for(int k=0; k<3; k++)

    c[i][j] += a[i][k] * b[k][j];

    }

    }

    // 输出结算结果

    for(int i=0; i<2; i++){

    for (int j=0; j<4; j++)

    System.out.printf("%-5d", c[i][j]);

    System.out.printlnwww.ymzxrj.com();

    }

    }

    }

    运行结果:

    25   65   14   -65

    50   130  28   -130

    几点说明:

    上面讲的是静态数组。静态数组一旦被声明,它的容量就固定了,不容改变。所以在声明数组时,一定要考虑数组的最大容量,防止容量不够的现象。

    如果想在运行程序时改变容量,就需要用到数组列表(ArrayList,也称动态数组)或向量(Vector)。

    正是由于静态数组容量固定的缺点,实际开发中使用频率不高,被 ArrayList 或 Vector 代替,因为实际开发中经常需要向数组中添加或删除元素,而它的容量不好预估。

    展开全文
  • java数组排序方法

    2021-12-14 19:28:50
    java数组中内容的2种排序方法
  • java数组创建的几种方式

    万次阅读 2019-03-20 15:40:03
    `public class Shuzu{ public static void main(String[] args) { //第一种 例: String[] test1 = new String[6]; test1[0] = “数组0”;... String[] test2 = {"数组0","数组1","数组2","...."...
  • java中创建数组的四种方法

    千次阅读 2021-10-12 19:36:31
    //创建数组的第一种方法 int[] arr=new int[6]; //通过创建对象的方法来声明一个数组对象 int intValue=arr[5]; //获取arr数组中第五号元素的值 //System.out.println(intValue); 方法二: 详情见注释 //创建...
  • 什么是数组? 如果我们需要创建一个 int 类型变量,那么我们只需要 int a; 如果我们需要创建五个 int 类型变量,那么我们只需要int a1;...java数组的创建 很多同学都是从C语言开始接触编程的,C语言中
  • 1. 数组概述 数组的定义: 数组是相同类型数据的有序集合. 数组描述的是相同类型的若干个数据,按照一定的先后次序排列组合而成。 其中,每一个数据称作一个数组元素,每个数组元素可以通过一...数组本身就是对象,Java
  • java 反射数组

    2021-02-25 19:22:50
    反射中可能用到的两个比较特殊的类型,数组和枚举,分别对应java.lang.reflect.Array和java.lang.Enum,后者其实并不是反射类库包中的类,但是反射的基础类库里面有使用枚举类型的方法数组数组是由Java虚拟机实现(这...
  • 本文主要以一维数组为例,讲解Java创建数组的三种方式。 一、先声明再初始化 String []a = new String[length]; a[0]=?......;//再赋值 二、声明的同时初始化 String []a = new String[]{a,b,...}; 三、不用new...
  • 主要为大家详细介绍了Java构建乘积数组的方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
  • 创建一个数组arry=1,2,3,4,5,6,7,8,9 2.对数组arry增加元素10; 3.删除数组arry的第二个元素 /* 1.创建一个数组为1,2,3,...,9 2.添加元素10 3.删除第二个元素 */ public class arry { public static...
  • 编写了两个源程序,主程序调用次程序中封装的方法(函数)模块,在主程序中将次程序中的类 对象化, 调用结束后生成“次程序.jsp”文件,这个是干嘛的...数组对象建立是跟着黑马程序员的教学视屏敲的,他生成的.class。
  • Java动态数组是一种可以任意伸缩数组长度的对象,在Java中比较常用的是ArrayList,ArrayList是javaAPI中自带的java.util.ArrayList。下面介绍一下ArrayList作为Java动态数组的用法。1.语法:add()是添加一个新的元素...
  • Java对象数组相互覆盖

    2021-02-26 10:59:34
    我有三个类Main,Process和Employee。我的问题是,最后一个对象数组总是...Java对象数组相互覆盖public class Main {public static void main(String args[]){Process p = new Process();p.setEmployeeList(p.gener...
  • java数组

    千次阅读 2021-03-06 01:07:34
    数组的定义数组是引用数据类型三种当中的其中一种。概念:同一种类型数据的集合。其实数组就是一个容器。数组的好处:可以自动给数组中的元素从0开始标号,方便操作这些元素。格式1:元素类型[] 数组名= new元素类型...
  • JAVA数组的创建和使用一、一维数组的创建和使用1.创建一维数组2.使用一维数组二、二维数组的创建和使用1.创建二维数组2.使用二维数组 一、一维数组的创建和使用 1.创建一维数组 1)先声明,再用new运算符进行内存...
  • Java byte数组与十六进制字符串互转

    千次阅读 2021-03-01 10:46:51
    1 /**2 * reference apache commons http://commons.apache.org/codec/4 *5 *@authorAub6 *7 */8 public classHex {910 /**11 * 用于建立十六进制字符的输出的小写字符数组12 */13 private static final char[] ...
  • 将HashSet中的元素转换为Java中的数组

    千次阅读 2021-03-01 07:20:09
    以下是将HashSet中的元素转换为数组的示例- 示例import java.util.*; public class Demo { public static void main(String args[]) { //创建一个哈希集 HashSet hs = new HashSet(); //将元素添加到...
  • Java数组元素查找的两种方法: 1.一个一个挨着找,直到找到为止。 代码: public class Array02 { public static void main(String[] args) { // 这个数组已经排序的。 int[] arr = {100,200,230,235,...
  • java输入数组结果出现乱码怎么处理

    千次阅读 2021-03-11 15:22:11
    如果要使插件开发应用能有更好的国际化支持,能够最大程度的支持中文输出,则最好使 Java文件使用UTF-8编码。修改默认编码:在菜单导航栏上Window-->Preferences 打开"首选项"对话框,左侧导航树,导航到 General...
  • 因此我们需要进行动态扩容:新建立一个新数组,扩充一个能够存储我们需要的数据的长度,最好超过它。然后将原数组的数据复制给新数组,然后再将新数据继续存储到新数组中,最后将原数组名称等于新数组即可。由于原...
  • 如何用Java创建一个数组

    千次阅读 2021-03-07 22:23:50
    Java中,可以使用new关键字像对象一样创建数组。使用new关键字在Java中创建数组的语法-type[]reference=newtype[10];哪里,type是数组元素的数据类型。reference是保存数组的引用。而且,如果您想通过使用索引对...
  • java使用数组来存储学生基本信息

    千次阅读 2021-11-17 23:01:47
    package com.jre.java.se; import java.util.Scanner; public class Test3 { public static void main(String [] agrs) { ...//创建学生数组 System.out.println("输入学生数目"); int n =sc.nextInt(); Syste.
  • java基于数组构建二叉树 最近,我们受命开发用于大数据分析的SAAS应用程序。 要进行数据挖掘,系统需要在数据库中存储数十亿个公共职位,并对其进行分类处理。 在我们的上下文中,分类是一个缓慢的,占用大量资源...
  • 示例可以定义一个具有多个维的数组。通过提供每个维度的索引来访问多维数组,而不是通过提供单个索引来访问。多维数组的声明可以通过[]为每个维添加常规数组decle来完成。例如,要制作二维int数组,请在声明中添加另...
  • Java数组排序输出

    2021-11-20 09:57:54
    问题:编写一个程序,在其中建立一个有10个整数的数组,运行后从键盘输入10个数,然后排序(升序)后输出 代码: package com.company; import java.util.Scanner; public class Main { public static void ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 231,381
精华内容 92,552
关键字:

java建立数组

java 订阅