精华内容
下载资源
问答
  • 一维数组初始化

    千次阅读 2019-08-03 20:51:26
    数组初始化分类 数组初始化分为动态初始化和静态初始化。 动态初始化: 在定义数组的时候就对该数组进行初始化。 int[] array = new int[]{23,34,45,56}; 黑体部分可以省略,注意别忘记大括号后面的分号。 静态...

    数组初始化分类

    数组初始化分为动态初始化和静态初始化。

    静态初始化:

    在定义数组的时候就对该数组进行初始化。

    int[] array = new int[]{23,34,45,56};

    分步写:

    int[] array;
    第一步还可以写为:int array[];两种方式都可以

    array = new int[]{23,34,45,56};
    第二步黑体部分可以省略,注意别忘记大括号后面的分号。

    动态初始化:

    将数组的定义和数组的初始化分开来进行。

    // 等号后面的[ ]内必须写上数组的长度
    int[] array1 = new int[3];
    array1[0] = 1;
    array1[2] = 2;
    array1[3] = 3;
    

    注意:
    ①.所谓初始化就是为数据对象或变量赋初值的做法,但引用数据类型有初值,如null,0等,数组的初值为0。
    ②.

    	 array1 = new int[]{2,3,4,2};
         System.out.println(array1[4]);
    

    这个错误不会报告错误,但运行时会出错。
    ③.
    int[] numbers = new int[3] {};
    在提供数组初始化器时不能定义维度表达式,不能同时写[3]里的数字{},两者只能选其一写。

    展开全文
  • 一维数组初始化

    千次阅读 2020-09-02 19:49:46
    所谓变量初始化,就是在定义变量的时候,给其赋值个初始值。那么,数组初始化,就是在定义数组的时候,给其赋值初始值。 数组初始化的格式如下: 数据类型 数组名 [常量值] = {值1, 值2, ..., 值N}; 此时,在...

    所谓变量初始化,就是在定义变量的时候,给其赋值一个初始值。那么,数组初始化,就是在定义数组的时候,给其赋值初始值。

    数组初始化的格式如下:

    数据类型  数组名 [常量值] = {值1, 值2, ..., 值N};

    此时,在定义数组的时候,指定了数组的长度,然后,给数组赋值。例如:

    int array[3] = {100, 200, 300};

    就相当于:

    array[0] = 100;

    array[1] = 200;

    array[2] = 300;

    程序测试例子如下:

     

    程序运行结果如下:

     

    注意,如果数组的长度比赋值列表中的元素多,则赋值列表赋给数组,然后,多出的数组元素自动赋0值。例如:

    int array[6] = {100, 200, 300}; //数组长度是6个元素,但是,初始化列表才有3个数值。

    就相当于:

    array[0] = 100;

    array[1] = 200;

    array[2] = 300;

    array[3] = 0;

    array[4] = 0;

    array[5] = 0;

    可以看到,定义数组的长度是6个元素,但是,赋值列表才有3个元素,所以,赋值列表赋给元素,然后,剩下的元素自动赋0值。

    程序测试例子如下:

     

    程序运行结果如下:

     

    注意:给数组初始化的时候,可以不用定义数组的长度,例如:

    数据类型  数组名 [] = {值1, 值2, ..., 值N};

    此时,数组的长度就是赋值列表的元素个数。例如:

    int array[] = {100, 200 ,300};

    定义array数组的时候,没有指定数组的长度,那么,就相当于:

    array[0] = 100

    array[1] = 200

    array[2] = 300

    此时,数组的长度就是赋值列表的元素个数。学习了sizeof关键字,我们就可以使用sizeof关键字来获取数组的长度,程序测试代码如下:

     

    程序运行结果如下:

     

    可以看到,定义了 array 数组的长度是3,就是初始化列表{100, 200, 300}中元素的个数。

    韦凯峰 Linux C/C++ 程序设计教程,Linux 系统编程,Openwrt 系统开发,微信:13926572996,QQ:1523520001,博客:www.mylinux.vip

    展开全文
  • 维数组正确初始化规则

    千次阅读 多人点赞 2019-03-19 20:30:50
    最近刷题总在二维数组初始化这里栽跟头,接下来总结一点二维数组初始化规则以便记忆 这里提一句一维数字代表行,二维数字代表列 arr[2][3]就是创建两行三列的数组 二维数组初始化的时候可以分行进行初始化 int...

    最近刷题总在二维数组初始化这里栽跟头,接下来总结一点二维数组的初始化规则以便记忆
    这里提一句一维数字代表行,二维数字代表列
    arr[2][3]就是创建两行三列的数组

    1. 二维数组在初始化的时候可以分行进行初始化
      int arr[2][3] = { { 1, 2, 3 }, { 4, 5, 6 } };

    2. 二维数组也可以进行放在一起进行初始化
      int arr[2][3] = { 1, 2, 3, 4, 5, 6 };

    3. 二维数组在初始化的时候可以进行部分初始化
      int arr[2][3] = { { 1 }, { 2 } };
      这个初始化就和1, 0, 0, 2, 0, 0初始化一样(一般初始值为0)
      int arr[2][3] = { 1, 2, 3 };
      这个就是1, 2, 3, 0,0,0

    4. 二维数组的初始化可以省略第一维的数字,但是不能省略第二维的数字
      int arr[][3] = { { 1 }, { 2 }};
      这里可以看出也是用1, 0, 0, 2, 0, 0初始化
      int arr[][3] = { 1 ,2 ,3, 4 };
      这里用这种方式进行初始化的时候,一维的数字大小是由这个初始化数字的数量多少来取的,例如这个例子是4个数字那么就是4/3+1(如果有余数再加1)

    这里我们来练习一下

    在这里插入图片描述
    A选项省略了二维数字 错误
    C选项定义了2行数据,但实际初始化输入了3行 错误
    D选项不能使用{}定义

    在这里插入图片描述
    这里定义的数组是 1,0,0,0/ 3,2,0,0/ 4,5,6,0/ 0,0,0,0

    在这里插入图片描述
    A选项 1,0,2,0
    B选项 1,2 / 3,4
    C选项 1,0,2,3
    D选项 未对二维数字定义 错误

    展开全文
  • 一维数组的语法: 1.java语言中的数组一种引用数据类型,不属于基本数据类型。数组的父类是Object。 2.数组实际上是一个容器,存放一组相同类型的数据。 3.数组当中可以存储“基本数据类型”的数据,也可以存储...

    Java中一维数组的语法及初始化:

    1、一维数组的语法:

    (1)java语言中的数组是一种引用数据类型,不属于基本数据类型。数组的父类是Object。

    (2)数组实际上是一个容器,存放一组相同类型的数据

    (3)数组当中可以存储“基本数据类型”的数据,也可以存储“引用数据类型”的数据。

    (4)数组因为是引用类型,所以数组对象是在堆内存当中,数组变量保存了对象的地址。

    (5)数组存储的是引用类型的话,实际上每个元素存储的都是对象的引用地址。

    (6)在java中,数组一旦创建,长度不可变

    (7)数组分为:一维数组,二维数组,多维数组(一维数组使用最多,二维数组使用较少,多维数组几乎不用)。

    (8)所有的数组对象都有length属性(java自带的),用来存储数组中元素的个数。

    (9)一个数组中只能存储相同数据类型,int型数组只能存int数据,Person型数组只能存Person类型数据。

    (10)数组在内存方面存储的时候,数组的元素内存地址是连续的,紧挨着的。数组是一种简单的数据结构。

    (11)所有的数组都是拿第一个元素的内存地址作为整个数组对象的内存地址

    (12)数组中每一个元素都是有下标的,下标从0开始,以1递增,最后一个元素下标是length - 1。

    下标在数组中非常重要,我们就是通过下标的概念来存储和访问数组的元素。下标只能从0到length - 1,一定要注意下标范围,不然会出现数组越界异常。


    2、数组这种数据结构的优点和缺点是什么?(重点)

    优点:
    查询/查找/检索某个下标上的元素效率极高,可以说是查询效率最高的一个数据结构。

    为什么数组检索效率高?

    (1)每一个元素的内存地址在空间存储上是连续的。

    (2)每一个元素类型相同,所以占用空间大小一样。

    (3)知道第一个元素的内存地址,知道每一个元素的内存大小,又知道下标,所以通过一个数学表达式就可以计算出某个下标的元素的内存地址,例如: 假设第一个元素的地址是200,元素大小是6,那么下标1的元素地址就是: 200+1*6,即206。直接通过内存地址定位到元素,所以说数组的检索效率是最高的。

    缺点:
    第一:由于为了保证数组中每个元素的内存地址连续,所以在数组中随机删除或者增加元素的时候,效率较低,因为增删元素会设计后面元素统一向前或者向后移位操作。

    第二:数组不能存储太多数据量,因为很难在内存空间上找到一块特别大的连续内存空间。


    3、怎么声明定义一个一维数组?

    int[] array1;
    boolean[] array2;
    String[] array3;
    Person[] array4;
    Object[] array5;
    

    4、怎么初始化一个一维数组?

    包括两种方式:静态初始化一维数组,动态初始化一维数组。

    (1)静态初始化语法格式:

    int[] array1 = {1, 6, 3, 7, 6};  //array1.length系统自动算出来为5
    String[] array2 = {"hello", "world", "good"};  //array2.length = 3
    

    (2)动态初始化语法格式:

    int[] array3 = new int[5];  //5表示数组元素的个数,每个元素都是int型,默认为0
    String[] array4 = new String[6];  //初始化长度为6的String型数组,默认值为null
    

    不存在这种定义:(静态维度和动态维度不能同时出现)

    int[] a = new int[3]{1, 2, 3};  //报错
    

    5、一维数组的遍历

    测试代码:

    public class ArrayTest01 {
        public static void main(String[] args) {
            //静态初始化数组
            int[] numArray = {2, 6, 5, 8};  //系统算出长度numArray.length = 4
            String[] strArray = {"hello", "world", "I", "am", "coming"};  //length = 5
    
            for (int i = 0; i < numArray.length; i++) {
                System.out.println("下标为" + i + "的数据为" + numArray[i]);
            }
            System.out.println("---------------------------------------------------");
            for (int i = 0; i < strArray.length; i++) {
                System.out.println("下标为" + i + "的数据为" + strArray[i]);
            }
    
            //当你不知道定义的数组该存什么时,你可以使用动态初始化,你只需要预定数组的length即可
            int[] a1 = new int[20];  //给int型数组预定20个元素
            String[] a2 = new String[10];  //给String型数组预定10个元素
            //之后你就可以通过下标给数组赋值
    
            //注意下标范围
            //System.out.println(a1[-1]);  //报错:ArrayIndexOutOfBoundsException
            //System.out.println(a1[a1.length]);
        }
    }
    

    展开全文
  • 一维数组初始化方法 方式一:静态初始化 数据类型[] 数组名 = {元素1,元素2,元素3...};//必须在一个语句中完成,不能分开两个语句写 举例: 定义存储1,2,3,4,5整数的数组容器 int[] arr = {1,2,3,...
  • 【总结】一维数组、二维数组的声明和初始化 1.一维数组的声明和初始化:  1.1静态初始化:数组的初始化和数组元素的赋值操作同时进行  1.2动态初始化:数组的初始化和数组元素的赋值操作分开进行    数组一旦...
  • 一维数组初始化问题

    万次阅读 2013-04-02 21:44:04
    参考了: http://bbs.csdn.net/topics/310136813 ... . 数组可以用个初始列表值来初始化,如下所示: int array1[] = {1, 5, 8, 9}; char array2[] = {'a', 'c', 'f', 'd', 'a'
  • C语言一维数组的定义及初始化

    千次阅读 多人点赞 2020-10-14 13:39:11
    一维数组初始化 1. 定义一维数组 一般形式: 类型说明符 数组名[常量表达式] eg: int a[10]; 下标从0开始,这10个元素是从a[0]~a[9] 类型说明符:指定数组中元素的类型 ,a中所有元素都是int类型的 数组名命名...
  • C语言的二维数组初始化的几种方式介绍1、直接赋值2、循环对每个元素赋值3、借用memset/memset_s初始化为0或-14、`数组所有元素初始化为相同值` 1、直接赋值 适合数组元素较少的,各元素的值可以不同。 int[2][3] arr...
  • 二维数组其实就是每一个元素为一维数组的数组。 (二)二维数组初始化格式 1.动态初始化 1.1 二维数组格式1 数据类型[][] 变量名 = new 数据类型[m][n]; m表示这个二维数组有多少个一维数组 必须写上 n表示每一个...
  • C语言中二维数组初始化和作为形参的设定细节
  • Python正确初始化维数组

    千次阅读 2020-10-10 11:03:34
    Python中初始化一个5 x 3每项为0的数组,最好方法是: ...我们知道,为了初始化一个一维数组,我们可以这样做: alist=[0]*5 没错,那我们初始化一个二维数组时,是否可以这样做呢: multi=[[0]*5]*...
  • 维数组初始化规则

    万次阅读 多人点赞 2018-03-27 14:24:16
    维数组初始化的形式为: 数据类型 数组名[整常量表达式][ 整常量表达式]={ 初始化数据 }; 在{ }中给出各数组元素的初值,各初值之间用逗号分开。把{ }中的初值依次赋给各数组元素。 有如下几种初始化方式: ...
  • C++中二维数组初始化

    万次阅读 2017-08-18 17:54:16
    种是静态声明及初始化,如下: int array2[3][2]={{4,2},{5},{6}};第二种是,有时我们不知道二维数组需要多少行和多少列,这时是动态数组。 int **array; 后来我们通过输入来获取数组的行n和列m,则对数组进行...
  • python二维数组初始化

    2020-07-23 15:31:41
    刚刚想生成个二维数组,于是就在代码里这么写了: myList = [[0] * 3] * 4] # [[0,0,0], [0,0,0], [0,0,0], [0,0,0]] 但是当我修改第个值myList[0][0]的时候,后面的myList[1][0]、myList[2][0]、myList[3][0]...
  • 一维数组的创建和初始化 创建: int arr[10]; 数组的初始化有三种方法: 1 直接初始化 //代码1 int arr[10] = { 0 }; //代码2 int arr[10] = { 0,1,2,3,4,5,6,7,8,9 }; 2 for循环初始化 void ...
  • Python中如何正确初始化一个二维数组? >>> print([1, 2, 3]*3) [1, 2, 3, 1, 2, 3, 1, 2, 3] >>> a1 = [1, 2, 3] >>> print(a1*3) # 直接乘3,相当于把a1中元素乘3 [1, 2, 3, 1, 2, 3...
  • 维数组初始化和计算

    千次阅读 2018-10-20 16:01:50
    初始化 1、完全初始化(也可内部省略花括号) float rain[5][12]={ {4.3,4.3,4.3,3.0,2.0,1.2,0.2,0.2,0.4,2.4,3.5,6.6}, {8.5,8.2,1.2,1.6,2.4,0.0,5.2,0.9,0.3,0.9,1.4,7.3}, {9.1,8.5,6.7,4.3,2.1,...
  • 1、一维数组初始化方式  数组初始化赋值是指数组定义时给数组元素赋予初值。数组初始化是在编译阶段进行的。这样将减少运行时间,提高效率。  初始化方式有两种:1) 定义的同时初始化 2) 先定义,后初始化。 ...
  • Python如何快速初始化一个二维数组

    千次阅读 2019-09-26 15:32:14
    正确的方法 cols= 3 rows = 2 memo = [[1] * m for i in range(n) ] ...这会导致 memo[0] == memo[1],改变其中个子数组的值,另个子数组也会一起变 转载于:https://www.cnblogs.com/yeni/p/11590108.html...
  • //定义个二维数组 int **aaa =NULL;//这里必须要定义初始值NULL,否则提示C4700的错误,“使用了未初始化的局部变量aaa” for (int i = 0; i < 10; i++) test_int[i] = new int[9]; 编译可以顺利通过,但是...
  • 文章目录 一维数组与二维数组的声明 一维数组的声明: 二维数组的声明: 总结 数组的初始化 静态初始化 动态初始化 默认初始化 一维数组与二维数组的声明 一维数组的声明: int[] a; //只声明数组a,没有初始化 int...
  • 正确初始化维数组

    千次阅读 2013-08-26 18:42:37
    维数组正确初始化 以下不能对二维数组正确初始化的语句是_C__。 A static int a[2][3]={0}; B static int a[ ][3]={{1,2},{0}}; C static int a[2][3]={{1,2},{3,4},{5,6}} D static int a...
  • 维数组初始化方式总结

    千次阅读 2015-03-03 16:35:18
    近日阅读别人的代码,发现自己在二维数组初始化方面存在盲点,遂总结一下,希望其他看到的人能得到一些收获。 初始化和赋值的区别: 初始化即在定义二维数组时就赋值,如:int a[2][3]={1,2,3,4,5,6}; 而对...
  • 维数组初始化的形式有?

    千次阅读 2017-07-14 16:30:51
    维数组初始化的形式有?
  • 维数组定义及初始化

    万次阅读 2016-06-13 17:04:56
    维数组初始化的形式为:  数据类型 数组名[整常量表达式][ 整常量表达式]={ 初始化数据 };  在{ }中给出各数组元素的初值,各初值之间用逗号分开。把{ }中的初值依次赋给各数组元素。  有如下几种...
  • //1、一维数组的声明和初始化 int num ;//声明 num = 10;//初始化 int id = 1001;//声明+初始化 int[] ids;//声明数组 //1.1静态初始化:数组的初始化和数组元素的赋值操作同时进行 ids = new int[]...
  • 后面的整个内容将围绕着一维数组展开,并且在学习一维数组之后会介绍一些一维数组的操作和使用。 表达式使用 我们在遇到的表达式里面通常包括: 关系表达式: 赋值表达式:= ,+= , -=, ×=, /=...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 48,143
精华内容 19,257
关键字:

一维数组的正确初始化