对象数组

java基础学习——24、容器

杀马特。学长 韩版系。学妹 提交于 2020-02-16 20:34:35
Java中有一些对象被称为 容器 (container )。容器中可以包含多个对象,每个对象称为容器中的一个元素。容器是用对象封装的 数据结构(data structure)。 充满梦想的容器 不同的数据结构有不同的组织元素的方式,也可以有不同的操作。根据具体实施的不同,数据结构的操作效率也各有差别。Java中的容器也是这样。我们要选择适当的容器,以应对变化的需求。 (关于数据结构更多的内容,可参考 纸上谈兵: 算法与数据结构 ) 数组 数组(array)是最常见的数据结构。数组是相同类型元素的有序集合,并有固定的大小(可容纳固定数目的元素)。数组可以根据 下标(index)来随机存取(random access)元素。在内存中,数组通常是一段连续的存储单元。 Java支持数组这一数据结构。我们需要说明每个数组的类型和大小。如下: public class Test { public static void main(String[] args) { Human[] persons = new Human[2]; // array size 2 persons[0] = new Human(160); persons[1] = new Human(170); int[] a = {1, 2, 3, 7, 9}; // array size 5 System.out.println

JavaScript 中的类数组对象(array-like objects)

◇◆丶佛笑我妖孽 提交于 2020-02-16 13:06:58
JavaScript 中的某些对象看起来像数组,但并不数组,这类对象被称为类数组。这篇博客文章我们一起看看类数组对象的含义以及如何最好地使用这些对象。 一、定义 类数组对象拥有索引和 length 属性。 但是类数组对象没有数组的方法,例如: push , forEach , indexOf 等。 举个例子: const array = [ 'name' , 'age' , 'sex' ] ; const arrayLike = { 0 : 'name' , 1 : 'age' , 2 : 'sex' , length : 3 } console . log ( array [ 0 ] ) ; // name console . log ( arrayLike [ 0 ] ) ; // name console . log ( array . length ) ; // 3 console . log ( arrayLike . length ) ; // 3 array [ 0 ] = 'new name' ; arrayLike [ 0 ] = 'new name' ; console . log ( array ) ; console . log ( arrayLike ) ; 二、遍历 类数组对象可以和数组一样使用 for...i 循环: for ( let i = 0 ,

Java_Map集合接口

♀尐吖头ヾ 提交于 2020-02-16 10:02:31
现实生活中,我们经常需要成对存储某些信息。比如,我们使用的微信,一个手机号只能对应一个微信账户。这就是一种成对存储的关系。 Map就是用来存储“键(key)-值(value) 对”的。 Map类中存储的“键值对”通过键来标识,所以“键对象”不能重复。 Map 接口的实现类有HashMap、TreeMap、HashTable、Properties等。 Map接口中常用的方法: HashMap采用哈希算法实现,是Map接口最常用的实现类。 由于底层采用了哈希表存储数据,我们要求键不能重复,如果发生重复,新的键值对会替换旧的键值对。 HashMap在查找、删除、修改方面都有非常高的效率。 Map接口中的常用方法 : import java.util.HashMap; import java.util.Map; public class TestMap { public static void main(String[] args) { Map<Integer, String> m1 = new HashMap<Integer, String>(); Map<Integer, String> m2 = new HashMap<Integer, String>(); m1.put(1, "张三"); m1.put(2, "李四"); m1.put(3, "王五"); m2.put(1, "一

getElementsByTagName得到的对象

|▌冷眼眸甩不掉的悲伤 提交于 2020-02-15 23:55:13
今天练习使用DOM创建html元素,想通过getElementsByTagName("body")获得body对象,然后建立和新创建的元素的关系,如下图: 其实,getElementsByTagName("body")得到的是一个伪数组,需要按照数组的访问方式进行方式,但是不能调用数组的方法,若需调用,则要使用Call或Apply方法。 来源: https://www.cnblogs.com/NIFS/p/12313886.html

j2me集合类Vector分析总结

喜你入骨 提交于 2020-02-15 16:08:12
Vector是java.util包的类,功能是实现了一个动态增长的数组,并为每个包含的元素分配一下整数索引号,这样就可以根据索引号删除、插入一个元素,也可以修改、获得一个元素的值。既然是动态数组,也可以在应用中来调整、裁减数组的长度。Vector的方法都是同步的(Synchronized), 是线程安全的(thread-safe)。 1. 存储管理 Vector是动态数组,因此随着对象元素的添加,当长度(容量)不足时,会自动增长,增长的增量和Vector对象的初始化构造有关。Vector有三个不同的构造函数,如下所示。 (1)指定初始容量和非0容量增量的构造函数 函数原型:public Vector(int initialCapacity, int capacityIncrement); 使用此构造函数,在创建实例时即指定初始的容量以及容量增量(如果capacityIncrement为0,则会抛出IllegalArgumentException异常)。如Vector v1 = new Vector(8,3); v1的初始容量为8,增量为3;这样当容量不足时,自动将容量增长capacityIncrement。 测试代码: Vector v1 = new Vector(8, 3); Integer no; for(int i = 0; i < 15; i++) { no = new

js笔记

左心房为你撑大大i 提交于 2020-02-15 13:16:03
1.javaScript--->是一种强大的脚本语言 脚本语言:无法独立执行,必须嵌入到其他语言中结合使用 编程语言:独立写程序,可独立运行。 1.javaScript组成 ECMAScript:基础语法 DOM:文档对象模型,对HTML中的 标签进行操作 BOM:浏览器对象模型,对浏览器进行操作 2.引入方式: 内部脚本: <script type=”text/javascript”> JavaScript的代码 </script> 外部引入 <script type=”text/javascript” src=”javascript文件路径” ></script> 2.基本数据类型 1.变量命名规则: 必须以字母或下划线开头,中间可以是数字、字符或下划线 不能使用js关键字如function this class 严格区分大小写 2.定义格式:var 变量名=变量值 3.基本数据类型 string boolean number null undefined 4.运算符 比较运算符< <= > >= != == === //=== 全等,值和类型均相等 逻辑运算符 && || ! 5.typeof可得到变量的类型 如果变量为引用类型或null,返回object 6.引用数据类型: js中不存在类的概念,所处理的引用类型都是对象 创建对象: var str = new String

javascript高级程序设计--笔记01

谁说胖子不能爱 提交于 2020-02-15 11:40:30
概述 JavaScript的实现包含三个部分:   1 核心(ECMAScript) 提供核心语言功能   2 文档对象模型(DOM) 一套提供了访问以及操作网页内容的API   3 浏览器对象模型(BOM) 一套提供了与浏览器交互的API   ECMAScript 仅仅定义了这门语言的基础,如定义了:语法、类型、语句、关键字等,实际上这门语言本身不包含输入输出定义。   而现实中, ECMAScript 大多借用了某些宿主环境(如web浏览器,Node,Adobe Flash)来实现丰富的功能,这些宿主环境不仅提供了基本的 ECMAScript 实现,还提供了该语言的扩展(DOM BOM都是扩展之一),这些扩展利用 ECMAScript 的语法等提供更多具体的功能。   通过DOM,将html页面映射为一个多层的节点结构:整个html是一个根节点,根节点下分为head和body子节点,这两个子节点下的所有html标签都是一个又一个的子标签节点…… 通过使用DOM提供的属性或者方法我们可以快速锁定到每一个我们想要锁定的节点。   BOM则负责处理浏览器窗口和框架,如: 弹出浏览器窗口,移动、缩放、关闭浏览器窗口,cookies支持等等 ECMAScript --------------------------------------------------------<<<<<

[c++primer][04]数组和指针

|▌冷眼眸甩不掉的悲伤 提交于 2020-02-15 10:36:16
现代C++程序应尽量使用vector和迭代器类型,而避免使用低级的数组和指针。设计良好的程序只有在强调速度时才在类实现的内部使用数组和指针。 4.1 数组 数组的维数必须用值大于等于1的常量表达式定义。非const变量以及要到运行阶段才知道其值的const变量都不能用于定义数组的维数。 初始化 如果没有显式提供元素初值,数组元素与变量初始化规则一致。 字符串字面值包含一个额外额空字符(null)用于结束字符串 const char ch[6] = “Daniel” ; //error: Daniel is 7 elements  操作 数组下标的正确类型是size_t 4.2 指针的引入 什么是指针 指针保存的是另一个对象的地址,&操作符只能用于左值 初始化 避免使用未初始化的指针 有效的指针或者保存一个特定对象的地址,或者指向某个对象后面的另一个对象,或者是0值(0值表明指针不指向任何对象) 指针也可使用预处理器变量NULL初始化,该变量在stdlib.h中定义,其值为0 void*指针 void*可以保存任何类型对象的地址,不允许使用void*指针操纵它所指向的对象 指针和引用 引用总是指向某个对象,定义引用时没有初始化是错误的; 给引用赋值修改的是该引用所关联的对象的值,引用一经初始化,就始终指向同一特定对象 使用指针访问数组元素 数组名是指向数组第一个元素的指针 C+

API.对象数组

喜欢而已 提交于 2020-02-15 06:30:28
API.对象数组 ArrayList常用方法 public boolean add(E e) public boolean add(E e):向集合当中添加元素,参数的类型与泛型一致,返回值代表添加是否成功 public E get(int index):从集合当中获取元素,参数是索引编号,返回值就是对应位置的元素 public E remove(int index):从集合当中删除元素,参数是索引编号,返回值就是被删除掉的元素 public int size():获取集合的尺寸长度,返回值就是集合中包含的元素个数 备注: 对于arraylist集合来说,add添加动作一定是成功的,所以返回值可用可不用,但是对于其他集合来说,add添加动作不一定成功 从集合中获取元素get,索引值从0开始 //方法的整体应用 package com.company; import java.util.ArrayList; public class ArrayListMethod { public static void main(String[] args) { ArrayList<String> list = new ArrayList<>(); System.out.println(list); //向集合中添加元素:add boolean success = list.add("mike")

es6~Map数据结构

人走茶凉 提交于 2020-02-15 03:19:42
Map 含义和基本用法 JavaScript 的对象(Object),本质上是键值对的集合(Hash 结构),但是传统上只能用字符串当作键。这给它的使用带来了很大的限制。 const data = {}; const element = document.getElementById('myDiv'); data[element] = 'metadata'; data['[object HTMLDivElement]'] // "metadata" 上面代码原意是将一个 DOM 节点作为对象 data 的键,但是由于对象只接受字符串作为键名,所以 element 被自动转为字符串 [object HTMLDivElement] 。 为了解决这个问题,ES6 提供了 Map 数据结构。它类似于对象,也是键值对的集合,但是“键”的范围不限于字符串,各种类型的值(包括对象)都可以当作键。也就是说,Object 结构提供了“字符串—值”的对应,Map 结构提供了“值—值”的对应,是一种更完善的 Hash 结构实现。如果你需要“键值对”的数据结构,Map 比 Object 更合适。 const m = new Map(); const o = {p: 'Hello World'}; m.set(o, 'content') m.get(o) // "content" m.has(o) //