对象数组

Final关键字功能概述

Deadly 提交于 2020-03-04 06:40:10
Final关键字可以用来修饰引用、方法和类。 1.用来修饰一个引用 1.1如果引用为基本数据类型,则该引用为常量,该值无法修改; 1.2如果引用为引用数据类型,比如对象、数组,则该对象、数组本身可以修改,但指向该对象或数组的地址的引用不能修改。 1.2如果引用时类的成员变量,则必须当场赋值,否则编译会报错。 2.用来修饰一个方法 当使用final修饰方法时,这个方法将成为最终方法,无法被子类重写。但是,该方法仍然可以被继承。 3.用来修饰类 当用final修改类时,该类成为最终类,无法被继承。简称为“断子绝孙类”。 来源: CSDN 作者: momo131422 链接: https://blog.csdn.net/momo131422/article/details/104627799

02_Java语音进阶||day05_异常,异常的处理,自定义异常,线程

≯℡__Kan透↙ 提交于 2020-03-04 06:04:14
第一章 异常 1.1 异常概念 异常: 就是不正常的意思(字面) 异常 :指的是程序在 执行过程中 ,出现的 非正常情况 ,最终会 导致JVM 的非正常停止。 在Java中, 异常本身就是一个类 ,产生异常就是创建异常对象并抛出了一个异常对象。Java的处理方式是 中断处理 注:异常指的 并不是语法错误 ,如果语法错了,编译不会通过,不会产生字节码文件,根本不能运行。 1.2 异常体系 异常的根类:java.lang. Throwable ,其中两个子类:java.lang. Error和java .lang. Exception【异常平时指它】 2. Throwable 体系: * Error :严重错误Error, 无法 通过 处理 的错误, 只能事先避让 ,比如: 绝症 * Exception :表示异常,异常产生后程序员可以通过代码的方式纠正,使程序继续运行,是必须要处理的,比如: 感冒,阑尾炎 * 注:留意一下RuntimeExcepition(Exception子类):运行期间抛出的异常 1.3 异常分类 java.lang. Throwable :类是 Java 语言中所有 错误或异常的超类 。 Exception:编译期异常【!】 ,进行编译(写代码)java程序出现的问题—— 我们就必须处理这个异常,要么throws或者try…catch【重点】

有以下 3 个判断数组的方法,请分别介绍它们之间的区别和优劣Object.prototype.toString.call() 、 instanceof 以及 Array.isArray()

大憨熊 提交于 2020-03-04 04:18:39
1. Object.prototype.toString.call() 每一个继承 Object 的对象都有 toString 方法,如果 toString 方法没有重写的话,会返回 [Object type] ,其中 type 为对象的类型。但当除了 Object 类型的对象外,其他类型直接使用 toString 方法时,会直接返回都是内容的字符串,所以我们需要使用call或者apply方法来改变toString方法的执行上下文。 const an = ['Hello','An']; an.toString(); // "Hello,An" Object.prototype.toString.call(an); // "[object Array]" 这种方法对于所有基本的数据类型都能进行判断,即使是 null 和 undefined 。 Object.prototype.toString.call('An') // "[object String]" Object.prototype.toString.call(1) // "[object Number]" Object.prototype.toString.call(Symbol(1)) // "[object Symbol]" Object.prototype.toString.call(null) // "[object

es6重点笔记:Symbol,Set,Map,Proxy,Reflect

喜夏-厌秋 提交于 2020-03-04 04:02:08
一,Symbol 原始数据类型,不是对象,它是JavaScript第七种数据类型,表示独一无二的值。Symbol是通过Symbol函数生成的: let s = Symbol(); typeof s // "symbol" 不用new,因为Symbol不是对象,而是原始值。Symbol通常作为内置的值来使用,最重要的一个属性: Symbol.iterator,该属性指向该对象的默认遍历器方法,所以 obj[Symbol.iterator]会返回该对象的默认遍历器,然后可以使用遍历器一些方法比如for...of 二,Set,Map 1,Set 类似于数组,但是成员的值都是唯一的,本身是构造函数,所以可以const s = new Set(); Set函数接收一个数组,会进行去重,但是注意返回的是Set结构,不是数组,因此要转换一下 [...new Set(array)],这就是最简单的数组去重。 Set生成的对象有size属性(实际是Set.prototype.size属性),代表里面成员个数,都是不重复的。 4个操作方法: add(value),添加某个值,返回Set结构本身,所以可以链式使用,连续add,但是如果add都是同一个,其实只算1个 delete(value),删除某个值,返回布尔值,表示是否删除成功 has(value),返回布尔值,表示是否为Set的成员 clear(

数组对象的21种常用方法

眉间皱痕 提交于 2020-03-03 19:39:52
1.concat 连接两个或多个数组,返回一个新的数组,且对其他数组不造成影响 返回值:返回一个新的数组 参数:用于连接的数组名 可以是多个也可以是一个 2.every 检测数组中的每个元素是否都符合条 件 返回值: 如果数组中有一个不符合就返回 false 全部符合就返回 true 参数: 两个参数 第一个参数是一个回调函数(参数是一个函数) 第二个参数是一个对象,可选,用于替换回调函数中的 this 这里的obj,把回调函数callback的指向window改成了对象obj 控制台输出的也就是对象obj 3.filter 检测数组中的元素,返回符合条件的元素构成的新的数组 返回值:返回的是一个新的数组 参数: 第一个是 callback 4.find 将数组中的每个元素都调用一次,然后返回第一个符合条件的元素 返回值:返回的是第一个符合条件的元素 参数:第一个是callback,必须要有返回值 第二个是用来替换this指向的 5.findIndex 用法与find一样,不一样的是findIndex是将数组中的每一个元素执行一次,返回第一个不符合条件的元素 6.forEach 调用函数中的每一个元素并将元素传递给callback forEach跟for循环一样 遍历每个元素 没有返回值 参数:第一个参数是callback     第二个是用来替换callback中this的对象

js中forEach,for in,for of循环的用法【转】

拜拜、爱过 提交于 2020-03-03 19:13:22
一、一般的遍历数组的方法: var array = [1,2,3,4,5,6,7]; for (var i = 0; i < array.length; i++) { console.log(i,array[i]); } 二、 用for in的方遍历数组 for(let index in array) { console.log(index,array[index]); }; 三、 forEach array.forEach(v=>{ console.log(v); }); array.forEach(function(v){ console.log(v); }); 四、 用for in不仅可以对数组,也可以对enumerable对象操作 var A = {a:1,b:2,c:3,d:"hello world"}; for(let k in A) { console.log(k,A[k]); } 五、 在ES6中,增加了一个for of循环,使用起来很简单 for(let v of array) { console.log(v); }; let s = "helloabc"; for(let c of s) { console.log(c); } 总结来说:for in总是得到对像的key或数组,字符串的下标,而for of和forEach一样,是直接得到值 结果for

JAVA学习笔记

删除回忆录丶 提交于 2020-03-03 17:18:01
Java教程 一.java简介 Java分为三个体系: JavaSE(J2SE)(Java2 Platform Standard Edition,java平台标准版) JavaEE(J2EE)(Java 2 Platform,Enterprise Edition,java平台企业版) JavaME(J2ME)(Java 2 Platform Micro Edition,java平台微型版)。 在正式学习java并安装配置开发环境之前,有必要了解一些有关Java的专业术语: JDK(Java Development Kit ):编写Java程序的程序员使用的软件 JRE(Java Runtime Environment):运行Java程序的用户使用的软件 Server JRE (Java SE Runtime Environment):服务端使用的 Java 运行环境 SDK(Software Development Kit):软件开发工具包,在Java中用于描述1998年~2006年之间的JDK DAO(Data Access Object):数据访问接口,数据访问,顾名思义就是与数据库打交道 MVC(Model View Controller):模型(model)-视图(view)-控制器(controller)的缩写,一种软件设计典范

集合——HashMap的工作原理

我只是一个虾纸丫 提交于 2020-03-03 16:19:27
http://www.importnew.com/16301.html 好的链接 HashMap的工作原理? 1. HashMap的底层结构是 数组加链表 ; a.HashMap包含一个Entry(key,value,next,hash)的内部类,key/value放入HashMap 的时候都会被包装成Entry的 对象 b.HashMap成员就有Entry数组,该数组的大小默认是16,永远都是2的次方数,如果自己给出的不是 2的次方数会转换成大 于并接近自己给的2 的次方数。 put(key,value)就是转换成Entry对象并放入数组中。 2.put方法的实现; c.1 根据key的HashCode进行Hash运算,得到hash值 c.2 根据hash值去确定数组的位置, hash&(table.length-1)等价于hash%(table.length) length是2的次方数该 公式成立, 正获取数组的位置 <bucket>。 c.3 如果这个位置没有元素存在,直接包装成Entry实例,给元素数组附值; 如果计算出的位置有元素已经存在,就会判断key是否相同,如果相同就会覆盖,并且遍历整个链表 如果都不覆盖插入到链表的头部 。 for (Entry<K,V> e = table [ i ]; e != null ; e = e . next ) 注意1

Web_javascript-ECMAScript

て烟熏妆下的殇ゞ 提交于 2020-03-03 00:30:52
javascript介绍 Web前端有三层: HTML:从语义的角度,描述页面 结构 CSS:从审美的角度,描述 样式 (美化页面) JavaScript:从交互的角度,描述 行为 (提升用户体验) 其中JavaScript基础又分为三个部分: ECMAScript:JavaScript的语法标准。包括变量、表达式、运算符、函数、if语句、for语句等。 DOM:文档对象模型,操作网页上的元素的API。比如让盒子移动、变色、轮播图等。 BOM:浏览器对象模型,操作浏览器部分功能的API。比如让浏览器自动滚动。 JavaScript历史背景介绍 布兰登 • 艾奇(Brendan Eich,1961年~),1995年在网景公司,发明的JavaScript。 一开始JavaScript叫做LiveScript,但是由于当时Java这个语言特别火,所以为了傍大牌,就改名为JavaScript。如同“北大”和“北大青鸟”的关系。“北大青鸟”就是傍“北大”大牌。 同时期还有其他的网页语言,比如VBScript、JScript等等,但是后来都被JavaScript打败了,所以现在的浏览器中,只运行一种脚本语言就是JavaScript ECMAScript是一种由Ecma国际(前身为欧洲计算机制造商协会,英文名称是European Computer Manufacturers

C风格字符串

大城市里の小女人 提交于 2020-03-02 21:08:55
尽管C++支持C风格字符串,但在C++程序中最好还是不要使用它们。这是因为C风格字符串不仅使用起来不太方便,而且极易引发程序漏洞,是诸多安全问题的根本原因。 字符串字面值是一种通用结构的实例,这种结构即是C++由C继承而来的C风格字符串。C风格字符串不是一种类型,而是为了表达和使用字符串而形成的一种约定俗成的写法。按此习惯书写的字符串存放在字符数组中并以空字符串结束。以空字符结束的意思是在字符串最后一个字符后面跟着一个空字符('\0')。一般利用指针来操作这些字符串。 C标准库String函数 下表列出了C语言标准库提供的一组函数,这些函数可用于操作C风格字符串,它们定义在出string头文件中,出string是C语言头文件string.h的C++版本。 C风格字符串的函数 strlen(p)      返回p的长度,空字符不计算在内 strcmp(p1,p2) 比较p1和p2的相等性。如果p1==p2,返回0;如果p1>p2,返回一个正值;如果p1<p2,则返回一个负值 strcat(p1,p2)    将p2附加到p1之后,返回p1 strcpy(p1,p2)    将p2拷贝给p1,返回p1 传入此类函数的指针必须指向 以空字符作为结束的数组 : char ca[]={'c','+','+'}; //不以空字符结束 cout<<strlen(ca)<<endl; //严重错误