`
zhouyrt
  • 浏览: 1172467 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

索引数组、关联数组和静态数组、动态数组

阅读更多

    数组分类:

1、从数组的下标分为索引数组、关联数组

 

/* 索引数组,即通常情况下所说的数组 */
var ary1 = [1,3,5,8];
//按索引去取数组元素,从0开始(当然某些语言实现从1开始)
//索引实际上就是序数,一个整型数字
alert(ary1[0]);
alert(ary1[1]);
alert(ary1[2]);
alert(ary1[3]);

/* 关联数组,指以非序数类型为下标来存取的数组  python中称为字典 */
var ary2 = {};
//存取时,以非序数(数字),这里是字符串
ary2["one"] = 1;
ary2["two"] = 2;
ary2["thr"]  = 3;
ary2["fou"] = 4;

 

2、从对数据的存储分为静态数组、动态数组

 

/* java中的静态数组 */
Int[] ary1 = {1,3,6,9};//定义后数组的长度固定了不能改变,按索引取数组元素


/* java中的动态数组 
(java中的ArrayList实现是以Array为基础的,这里说动态数组是广义的,不管采用什么方式实现。不要较劲)
 */
List<Integer> ary2 = new ArrayList<Integer>();
ary2.add(1);//可以动态的添加元素,数组的长度也随着变化
ary2.add(3);
ary2.add(6);

 

/* js的数组属于动态数组 */
var ary = [];//定义一个数组,未指定长度
ary[0] = 1;//可以动态的添加元素
ary.push(3);
ary.push(5);

alert(ary.join(","));//输出1,3,5
 

js的数组同时属于索引数组和动态数组,因为本质上它就是一个js对象,体现着js动态语言特性。但js的索引数组并非“连续分配”内存的,因此索引方式并不会带来很高的效率。而java中的数组则是连续分配内存的。

分享到:
评论

相关推荐

    JavaScript中的索引数组、关联数组和静态数组、动态数组讲解

    1、从数组的下标分为索引数组、关联数组 代码如下: /* 索引数组,即通常情况下所说的数组 */ var ary1 = [1,3,5,8]; //按索引去取数组元素,从0开始(当然某些语言实现从1开始) //索引实际上就是序数,一个整型...

    [原创] SV中数组代码实践笔记

    通过`chandle`类型的变量和`new[]`操作符可以创建动态数组,但要注意动态数组的生命周期管理。 6. **数组函数和方法**:SV提供了一些内置函数,如`$swrite`用于将数组内容格式化输出,`$display`或`$write`可以显示...

    C#源码 字符串数组的动态添加,查找,删除

    然而,静态数组在需要进行添加、删除操作时可能存在局限性,因为它们在声明时就固定了大小。为了解决这个问题,我们可以使用动态数组,如ArrayList或List类来实现更灵活的数据管理。本主题将深入探讨如何在C#中对...

    button数组

    文件"vc创建静态控件数组的方法.docx"可能包含了更详细的步骤和示例,而"CtrlArray"可能是对控制数组概念的一种简短命名。 总之,使用控件数组是提高GUI编程效率的有效方法,尤其适用于需要对大量相似控件进行操作...

    VBA数组基础学习.txt

    2. **静态数组与动态数组的区别:** - **静态数组:**大小固定,不能改变。 - **动态数组:**可以在运行时动态改变大小。 #### 五、数组的循环遍历 1. **使用循环遍历数组:** ```vba Sub LoopThroughArray()...

    C++对象数组[归类].pdf

    总的来说,对象数组是C++中一个强大的工具,它允许我们方便地管理一组相关联的类对象,通过构造函数进行初始化,并且能够通过数组索引进行访问和操作。理解和掌握对象数组的使用是C++编程中的重要技能,对于软件开发...

    php读取csv数据保存到数组的方法

    类中包含两个私有方法:`csvarray`和`ordenamultiarray`,以及一个静态方法`open`。让我们逐一分析这些方法: 1. **`open`方法**: - `open`方法接收两个参数:文件路径 `$file` 和分隔符 `$delimiter`(默认为...

    字符索引矩阵

    此外,为了优化性能,可以考虑使用静态分配的数组代替动态数组,但这需要预先知道所有可能的字符范围。 通过`CharIndexArray`这个文件,我们可以期待看到一个具体实现的字符索引矩阵类,可能包括构造函数、插入、...

    IC验证面试常问88道题

    关联数组主要用于需要超大空间但又不是全部需要所有数据的时候,类似于hash,通过一个索引值和一个数据组成,索引值必须是唯一的。队列结合了链表和数组的优点,可以在任何位置进行增加或者删除元素。 Q2. 多线程 ...

    自己学习的php学习笔记

    数组分为索引数组、关联数组和多维数组。对象是包含数据和处理这些数据的方法的数据结构。此外,还有可调用类型、资源类型和NULL类型。资源类型用于存储外部资源的引用,如数据库连接或文件句柄。 在PHP中,转换...

    PHP的学习笔记.pdf

    - 数组的分类:索引数组和关联数组。 - 数组的创建和访问元素。 - 数组指针和可变函数。 - 数组操作:添加、更新、遍历、排序、统计等。 8. 类与对象: - 类的声明、方法、属性和构造函数。 - 类的继承、多态...

    ActionScript 3.0 设计

    第8章介绍了数组的使用,包括索引数组、关联数组和多维数组的创建和操作,以及克隆和处理数组的高级技术。这章节有助于开发者高效地管理和操作数据集合。 这份文档不仅适合初学者入门,也对有一定经验的...

    数据结构 静态查找表

    在实际应用中,静态查找表可能采用一些优化策略,比如哈希表,通过哈希函数将键值映射到数组索引,可以进一步提高查找速度,达到近乎常数时间的平均查找复杂度。但是,哈希表并不是真正的静态查找表,因为它通常允许...

    面试常问问题文档.pdf

    * 关联数组:主要针对需要超大空间但又不是全部需要所有数据的时候使用,类似于 hash,通过一个索引值和一个数据组成,索引值必须是唯一的。 * 队列:队列结合了链表和数组的优点,可以在一个队列的任何位置进行增加...

    关于初学PHP时的知识积累总结

    - 数字索引数组的初始化可以通过array()函数或range()函数完成。 - 关联数组通过直接赋予键值对的方式初始化。 - PHP数组操作的运算符包括加号(+)用于数组合并,以及等于(==)用于比较两个数组。 - PHP数组与数组...

    考试类精品--年php面试常见考点和答案.zip

    - 数组创建:使用array()创建数组,了解索引数组和关联数组的区别。 - 数组遍历:foreach循环,以及list()和each()函数的应用。 - 数组函数:array_push(), array_pop(), array_merge(), array_slice()等常用数组...

    关于C#索引器

    这样可以创建一个关联学生姓名和课程编号的索引,实现更复杂的数据结构。 ```csharp s["张三", 1] = 90; ``` 这行代码通过学生的姓名和课程编号作为索引,将成绩90赋值给`ScoreIndex`对象。 索引器与属性的主要...

    php入门很简单.zip

    有索引数组(顺序存储)和关联数组(键值对存储)两种形式。例如: ```php $numbers = array(1, 2, 3); // 索引数组 $fruits = array("apple", "banana", "orange"); // 索引数组 $person = array("name" =&gt; "John",...

    PHP语法规范.docx编程资料

    PHP中的数组可以是索引数组或关联数组。 - **索引数组初始化**:可以通过 `array()` 函数或直接赋值的方式创建索引数组。 - **关联数组初始化**:关联数组使用键值对的形式存储数据。 #### 九、对象与类 在PHP中...

Global site tag (gtag.js) - Google Analytics