黑马程序员JavaScript知识点(三)
- 格式:doc
- 大小:144.50 KB
- 文档页数:4
黑马程序员JavaEE就业班同步笔记Web前端技术:JavaScript高级1.1案例五:使用JS完成复选框的全选和全不选的效果1.1.1需求:在实际的开发中一条记录一条记录进行删除的话,效率很低,有的时候需要一起删除多条记录.需要通过在表格之前设置一个复选框的形式进行勾选复选框.点击一个删除的按钮.1.1.2分析:1.1.2.1技术分析:1.1.2.2步骤分析:【步骤一】创建一个HTML页面.【步骤二】确定事件:复选框的单击事件.【步骤三】触发一个函数【步骤四】在函数中,获得上面的复选框是否被选中.【步骤五】如果选中,下面的所有的复选框都被选中.【步骤六】如果不选中,下面的所有的复选框都不选中.1.1.3代码实现:function checkAll(){// 获得上面的复选框var selectAll = document.getElementById("selectAll");// 判断这个复选框是否被选中.var ids = document.getElementsByName("ids");if(selectAll.checked == true){// 上面复选框被选中:获得下面所有的复选框,修改checked属性for(var i = 0 ;i<ids.length;i++){ids[i].checked = true;}}else{// 上面复选框没有被选中:获得下面所有的复选框,修改checked属性for(var i = 0 ;i<ids.length;i++){ids[i].checked = false;}}}1.1.4总结:1.1.4.1JS中的DOM对象:【DOM的概述】什么是DOMDOM:Document Object Model:文档对象模型.将一个HTML的文档加载到内存形成一个树形结构,从而操作树形结构就可以改变HTML的样子.DOM的使用:知道document,element,attribute中的属性和方法【DOM的常用的操作】获得元素:* document.getElementById(); -- 通过ID获得元素.* document.getElementsByName(); -- 通过name属性获得元素.* document.getElementsByT agName(); -- 通过标签名获得元素.创建元素:* document.createElement(); -- 创建元素* document.createTextNode(); -- 创建文本添加节点:* element.appendChild(); -- 在最后添加一个节点.* element.insertBefore(); -- 在某个元素之前插入.删除节点:* element.removeChild(); -- 删除元素【使用DOM完成对ul中添加一个li元素】function addElement(){var city = document.getElementById("city");// 创建一个元素:var liEl = document.createElement("li");// 创建一个文本节点:var text = document.createTextNode("深圳");// 添加子节点:liEl.appendChild(text);city.appendChild(liEl);}1.2案例六:使用JS完成省市联动的效果:1.2.1需求:在注册页面上有两个下拉列表,左侧省份的下拉列表一改变,右侧的市的下拉列表也要跟着发生变化.1.2.2分析:1.2.2.1技术分析:【JS中创建数组】【JS的事件】下拉的列表的改变的事件.onchange. 【JS的DOM的操作】创建元素:添加元素:1.2.2.2步骤分析【步骤一】创建一个HTML文件.【步骤二】确定事件:onchange事件.【步骤三】触发函数,在函数中编写代码.【步骤四】获得到所选择的省份的信息.【步骤五】根据选择的省份的信息获得到对应的数组中的市的数据.【步骤六】遍历数组中的市的信息.【步骤七】创建元素,创建文本,最后将元素添加到第二个列表中.1.2.3代码实现:// 定义数组:二维数组:var arrs = new Array(5);arrs[0] = new Array("杭州市","绍兴市","温州市","义乌市","嘉兴市");arrs[1] = new Array("南京市","苏州市","扬州市","无锡市");arrs[2] = new Array("武汉市","襄阳市","荆州市","宜昌市","恩施");arrs[3] = new Array("石家庄市","唐山市","保定市","邢台市","廊坊市");arrs[4] = new Array("长春市","吉林市","四平市","延边市");function changeCity(value){// 获得到选中的省份的信息.var city = document.getElementById("city");// 清除第二个列表中的内容:for(var i=city.options.length;i>0;i--){city.options[i] = null;}// city.options.length = 0;// alert(value);for(var i= 0 ;i< arrs.length;i++){if(value == i){// 获得所有的市的信息.for(var j=0;j<arrs[i].length;j++){// alert(arrs[i][j]);// 创建元素:var opEl = document.createElement("option");// <option></option>// 创建文本节点:var textNode = document.createTextNode(arrs[i][j]);// 将文本的内容添加到option元素中.opEl.appendChild(textNode);// 将option的元素添加到第二个列表中.city.appendChild(opEl);}}}}1.2.4总结:1.2.4.1JS的内置对象:Array:Boolean:Date:* ?time=new Date().getTime(); Math对象:String对象:* charAt();* indexOf();* lastIndexOf();* split();* replace();* substring();* substr();1.2.4.2JS的全局函数:* parseInt();* parseInt(“11”);* parseFloat();* parseFloat(“32.09”);* 编码和解码的方法:// 解码* decodeURI();* decodeURIComponent();// 编码* encodeURI();* encodeURIComponent();eval函数:* 将一段内容当成是JS的代码执行. //var sss = “alert(‘aaaa’)”; //eval(sss);。
函数:一段能够自动完成某些功能的代码
定义语法:
function 函数名(形式参数1,形式参数2。
){
//一些代码
函数体
}
调用语法:
函数名(实际参数1,实际参数2。
);
注意:函数在写好之后是不会自己去执行,需要调用函数才会执行
注意:函数执行完成之后会回到调用函数的位置
一般来说函数写好之后不会总去改动函数内部的代码
函数的练习:
求任意一个数为圆的半径,球圆的面积,假设pai为3.14
求已知任意两个值为直角三角形的两条直角边,求斜边
函数名:
注意:不要和系统函数以及关键字相同
建议:函数名要起得有意义
函数的执行:
1,点到firebug的脚本
2,点击某个位置添加断点
3,刷新
4,点击单步进入
作用域:
对于函数来说,函数内部定义的变量叫局部变量
函数外部的变量叫做全局变量
只是针对函数来说的
局部变量:只能在函数内部使用
全局变量:可以放到任何位置去用
平时只会关注局部变量,只要在函数内部定义变量就必须有意识的知道,存在作用域的问题。
js文字知识点整理JS(JavaScript)文字知识点整理JavaScript是一种脚本语言,用于为网页添加交互和动态功能。
它是一种弱类型语言,可以直接嵌入到HTML代码中使用。
本文将按照不同的主题一步一步回答关于JavaScript的文字知识点。
[JavaScript的基本语法和常用的数据类型]JavaScript有很多不同的数据类型,包括:字符串(String),数字(Number),布尔值(Boolean),数组(Array),对象(Object),以及一些特殊的数据类型,如空(null)和未定义(undefined)。
JavaScript 的基本语法遵循以下规则:1. JavaScript 代码可以包含在HTML文件中的<script>标签中,或者外部的.js文件中。
2. JavaScript的注释使用单行注释或/*多行注释*/ 的方式。
3. JavaScript的语句以; 结束。
4. JavaScript是区分大小写的,关键字都是小写的。
5. JavaScript中的变量使用关键字var 进行声明。
6. JavaScript中的变量不需要事先声明数据类型,可以随时赋予不同数据类型的值。
7. 字符串需要用引号(单引号或双引号)括起来,如'这是一个字符串' 或"这也是一个字符串"。
[JavaScript的运算符和表达式]JavaScript中有很多种运算符和表达式,用于进行数学运算、字符串拼接等等。
以下是一些常用的运算符和表达式:1. 算数运算符:+ 加法- 减法* 乘法/ 除法取余数。
2. 赋值运算符:= 等号+= 加等于-= 减等于*= 乘等于/= 除等于= 取余等于。
3. 比较运算符:== 等于!= 不等于> 大于< 小于>= 大于等于<= 小于等于。
4. 逻辑运算符:&& 与或! 非。
5. 字符串拼接:+ 运算符可以用于连接字符串,如var str = "Hello" + "World"; 结果为"HelloWorld"。
一、黑马程序员—java概述与基础知识 61、何为编程? 62、Java语言概述,历史、特点63、什么是跨平台性?原理是什么?JVM 64、Jre和Jdk的区别? 75、java虚拟机JVM 76、Java程序运行机制77、学习java注意的地方78、Java语法格式89、代码注释:单行//,多行/* */,文档注释/** */ 810、Java中的标识符811、java中的常量和变量812、Java成员变量和局部变量914、基本数据类型转换之向上转型和向下转换1115、Java的运算符1116、表达式和三目运算符1217、程序流程控制1218、三大循环结构: 1419、嵌套循环与流程控制17二、黑马程序员—方法与数组181、什么是方法(Method)?182、Java中方法的格式:193、方法里的属性194、方法特点195、什么是方法的重载(Overload)?206、可变参数217、数组简介:228、一维数组的声明与初始化:229、数组的使用:2310、分配内存空间2411、二维数组:2512、操作数组的工具类-Arrays 2613、Java5新特性对数组的支持:27三、黑马程序员—面向对象(1)271、什么叫面向对象?272、类283、构造方法284、static关键字305、匿名对象316、this关键字317、面向对象之封装318、访问修饰符329、类的设计分析3210、面向对象之继承3311、子类访问父类和方法覆写3412、super关键字和调用父类构造方法3413、面向对象之多态3514、引用变量类型转换37四、黑马程序员—面向对象(2)381、基本数据类型的包装类382、基本数据类型和包装类相互转换383、基本类型和String之间的转换394、Object类395、代码块406、构造方法的私有化427、Singleton模式(单例模式) 饿汉式和懒汉式428、final 关键字449、抽象类4510、抽象类的体现-模板模式4711、接口(interface) 4812、接口的使用5013、面向接口编程之制定标准和简单工厂模式5014、面向接口编程之适配器模式5215、接口和抽象类的比较5316、匿名内部类5417、枚举类54五、黑马程序员—异常处理和常用类571、异常572、异常处理格式573、多异常处理584、异常的分类595、声明异常(throws)606、throw 608、throw和catch同时使用 619、常用类6210、String方法6411、StringBuffer 与StringBuilder 6612、Math和Random和UUID 6913、Date和Calendar 7014、System 74六、黑马程序员—线程技术741、进程和线程752、创建线程方式753、两种进程创建方式比较774、线程的生命周期785、控制线程796、多线程安全问题817、多线程安全问题的解决方法828、线程通信86七、黑马程序员—集合框架(1)891、集合类&容器892、Collection接口 903、Iterator接口914、集合遍历输出方式916、TreeSet 957、List接口998、List接口中常用类1019、Map接口104八、黑马程序员—集合框架(2)1071、Collections类1072、Arrays 1093、泛型(Generic) 1094、泛型的使用1105、声明多个泛型类型和通配符1146、泛型的上限与下限1157、泛型接口和方法1178、泛型的嵌套(map例子)118九、黑马程序员—IO操作(1) 1191、IO的概述和File方法1192、递归(Recursion) 1203、文件过滤器java.io.FilenameFilter 1224、流1235、操作流的步骤(重点)1246、字节流和字符流1257、文件拷贝1278、字节→字符转换流1299、自动关闭资源的try语句130十、IO文件操作(2) 1311、内存操作流1312、打印流1333、格式化输出1344、标准流1355、Scanner(简单文本扫描器) 1376、缓冲流1397、合并流(SequenceInputStream)140 十一、黑马程序员—网络编程1411、什么是网络编程?1412、网络通讯要素1423、TCP和UDP的联系和用途1424、InetAddress与Socket 1435、UDP传输1446、TCP传输1488、小例子154十二、黑马程序员—反射机制1561、反射的概念1562、获得Class对象1583、九个预定义Class对象1594、利用Class获取类的属性信息1605、Class中得到构造方法Constructor、方法Method、字段Field 1616、利用反射创建对象1667、使用反射调用方法1698、使用反射调用可变参数方法1709、使用反射操作字段17110、反射和泛型-反射来获取泛型信息173十三、黑马程序员—反射机制1751、GUI(图形用户界面) 1752、布局管理器1763、事件监听机制组成1774、Dialog 1845、菜单1871、Eclipse的使用技巧1912、静态导入(1.5特性,好处是不用写类名)1923、可变参数1935、基本数据类型的自动拆箱与装箱1946、枚举1947、反射实现框架功能1961、内省 了解JavaBean 1982、内省综合案例和Beanutils工具包 1983、注解(Annotation)2014、泛型2041、类加载器2082、类加载器的委托机制2083、一个类加载器的高级问题分析2124、代理的概念与作用2125、动态代理技术2146、分析JVM动态生成的类 2148、实现类似spring的可配置的AOP框架 220黑马程序员——面试题之交通灯管理系统 2241、面向对象的分析与设计2252、Road类的编写 2263、Lamp类的编写2274、LampController类的编写2305、MainClass类的编写 230黑马程序员——面试题之银行业务系统2321、需求2322、需求分析2333、NumberManager类 2334、NumberMachine类2345、CustomerType枚举类2356、ServiceWindow类2357、MainClass类与Constants类238一、黑马程序员—java概述与基础知识1、何为编程?编程就是让计算机为解决某个问题而使用某种程序设计语言编写程序代码,并最终得到结果的过程。
第一部分:黑马程序员 6天数据挖掘基础笔记1.1 介绍在信息时代,数据挖掘已成为各行各业的重要工具,从商业决策到科学研究,数据挖掘都发挥着重要作用。
而作为一名程序员,了解数据挖掘的基础知识,将有助于提升自己的技能水平。
在这篇文章中,我们将从头开始,探讨由黑马程序员教育授课的6天数据挖掘基础课程内容。
1.2 数据挖掘概述数据挖掘是一项涉及统计学、机器学习和数据库技术的交叉学科,旨在通过发掘大量数据中的规律和模式,为企业和科研提供决策支持。
而黑马程序员的6天数据挖掘基础课程,将从基础开始,逐步引导学员了解数据挖掘的核心概念,并掌握相关的技术和工具。
1.3 课程内容概述在黑马程序员的6天数据挖掘基础课程中,学员将学习到数据挖掘的基本流程和方法,包括数据预处理、特征工程、模型构建和评估等内容。
课程还将介绍数据挖掘常用的算法和工具,如决策树、聚类分析、关联规则挖掘等。
在学习过程中,学员将通过实际案例和项目,进行实践操作,以深入理解数据挖掘的应用。
1.4 个人观点我个人认为,数据挖掘作为一项重要的技术手段,对程序员来说具有重要意义。
通过学习数据挖掘的基础知识,可以帮助程序员更好地理解和应用数据,提升自己在数据处理和分析方面的能力。
另外,黑马程序员的6天数据挖掘基础课程,内容丰富、实用性强,适合想要系统学习数据挖掘知识的程序员。
第二部分:课程深入探讨2.1 数据预处理在数据挖掘的过程中,数据预处理是至关重要的一步。
通过数据预处理,可以清洗和转换原始数据,使其适合用于接下来的分析和建模。
常见的数据预处理方法包括缺失值处理、异常值检测和处理、数据标准化等。
学员在学习数据挖掘基础课程时,需要掌握这些数据预处理方法,并能够灵活运用于实际项目中。
2.2 特征工程特征工程是指对原始数据进行特征提取、变换和选择,以构建更适合模型应用的特征集合。
在数据挖掘中,特征工程的质量直接影响模型的性能和准确度。
学员需要学会如何对数据进行特征工程,选择合适的特征,并将其转化为可供模型使用的数据格式。
目录java概述: (2)java语法基础 (3)面向对象 (9)常用API (34)集合框架 (44)Jdk5。
0新特性 (51)IO流 (55)网络编程 (68)反射技术 (71)正则表达式 (74)MySql数据库 (74)SQL语句 (75)DDL数据设计语言 (75)字段类型 (76)表操作:table (77)DML数据操作语言 (78)插入记录:insert (78)更新记录:update (78)删除记录:delete (78)DQL数据查询语言 (78)排序 (79)聚合 (79)分组 (80)java概述:1991 年Sun公司的James Gosling等人开始开发名称为 Oak 的语言,希望用于控制嵌入在有线电视交换盒、PDA等的微处理器;1994年将Oak语言更名为Java;Java的三种技术架构:JAVAEE:Java Platform Enterprise Edition,开发企业环境下的应用程序,主要针对web程序开发;JAVASE:Java Platform Standard Edition,完成桌面应用程序的开发,是其它两者的基础;JAVAME:Java Platform Micro Edition,开发电子消费产品和嵌入式设备,如手机中的程序;1,JDK:Java Development Kit,java的开发和运行环境,java的开发工具和jre.2,JRE:Java Runtime Environment,java程序的运行环境,java运行的所需的类库+JVM(java虚拟机)。
3,配置环境变量:让java jdk\bin目录下的工具,可以在任意目录下运行,原因是,将该工具所在目录告诉了系统,当使用该工具时,由系统帮我们去找指定的目录。
环境变量的配置:1):永久配置方式:JA V A_HOME=%安装路径%\Java\jdkpath=%JAVA_HOME%\bin2):临时配置方式:set path=%path%;C:\Program Files\Java\jdk\bin特点:系统默认先去当前路径下找要执行的程序,如果没有,再去path中设置的路径下找.classpath的配置:1):永久配置方式:classpath=.;c:\;e:\2):临时配置方式:set classpath=。
一. 数据类型:_x0002_1 string_x0002_2 number_x0002_3 boolean_x0002_4 undefined_x0002_5 Null_x0002_6 object_x0002_7 Array_x0002_8 Function总结:在js中数据类型分为两大类:简单数据类型(基础数据类型):string,number,boolean,undefined 复杂数据类型:Null,Array,object,function堆和栈都是电脑的内存。
简单数据类型是存储在栈中。
复杂数据类型是存储在堆中的,但是他的引用存储在栈中的。
二. object对象:_x0002_1对象的创建:var a = New Object();_x0002_2对象属性的添加:a.xingming = "zhangsan";//给了对象一个名称a.chengji = 99;//给了对象一个成绩a.xingbie = “女”;_x0002_3对象属性的取值:alert(a.xingming);三. 数组:Array_x0002_1数组创建:var a = new Array();//创建好了一个数组_x0002_2数组的赋值:_x0002_3数组取值:alert(a[2]);_x0002_4注意点:a)js中的数组定义好了之后就是一个无穷大的容器b)元素可以任意添加:数量不限制,数据类型不限制(弱语言)。
c)元素下标以0开始_x0002_5遍历数组for(var i = 0 ;i < a.length ; i++){console.log(a[i]);}_x0002_6字符串也可以看成是一个数组:var a = “abcdefg”;//a,b,c,d,e,f,g四. 函数:_x0002_1作用:用来封装一些经常要用到的代码:_x0002_2结构:function 函数名() {//要封装的代码。
目录北京黑马培训简介: (2)报名流程: (2)自学课程: (2)上课时间安排:(实行指纹打卡,迟到10天以上劝退!) (3)课程设置:(四个月集训) (3)培训费用: (3)师资力量:(部分) (3)往届课程参考: (6)黑马晨读资料: (14)(ref. full specialization) (22)CCP(communication[kə,mju:ni'keiʃən]control [kən'trəul]processor ['prəusesə]) 通信控制处理机 (27)MIPS(millions of instructions per second 每秒百万条指令 (30)学习路线图: (40)北京黑马培训 JAVA Android IOS北京黑马培训简介:报名流程:1.网上填写报名信息,并进入报名系统提交一封自荐信(3000字左右)2.下载基础测试,测试基础知识掌握情况。
(3天左右做完)3.根据基础测试结果,自学相应的技术视频4.需要写10篇技术blog、在黑马论坛与志同道合的朋友交流。
(积累技术分)5.技术储备好了,就可以参加入学考试了。
(一份试卷,一天内完成)6.预约老师,进行远程面试。
(面试时间30分钟以上,主要是技术性问题)自学课程:黑马程序员JavaEE+Android——开学前自学的Java课程(提供这些课程的视频下载)◇基础好:视频学习周期建议为5—10天,具体根据学生自学能力,自行合理安排时间。
第一阶段:Java基础(1-2天)●Java高级视频_IO输入与输出●Java高级视频_网络编程第二阶段:Java基础加强(3-4天)●2016年Java高新技术第三阶段:7k月薪面试题破解(2天)●交通灯管理系统视频●银行业务调度系统◇没有基础:视频学习周期建议为20-40天,具体根据学生自学能力,自行合理安排时间。
第一阶段:Java初级(8-15天)●Java开发前奏●Java编程基础●面向对象●多线程●JavaAPI第二阶段:Java基础(6-8天)●Java高级视频_IO输入与输出●图形用户界面GU●Java高级视频_网络编程第三阶段:Java基础加强(5-7天)●2016年Java高新技术第四阶段:7k月薪面试题破解(2-3天)●交通灯管理系统视频●银行业务调度系统上课时间安排:(实行指纹打卡,迟到10天以上劝退!)作息时间:早8:30——晚8:30早8:30——9:00 英语晨读时间,掌握软件开发常用词汇早9:00——12:00 上午上课时间12:00——14:00 午餐和午休时间14:00——17:00 下午上课时间17:00——18:00 晚餐时间18:00——20:30 晚自习时间课程设置:(四个月集训)第一阶段:Html+CSS+JavaScript基础第二阶段:JavaWEB+JavaMail开发技术+网上银行交易系统+网上在线支付第三阶段:Android核心基础第四阶段:Android高级+Git版本管理+linux+Webservice技术第五阶段:Android项目实战:手机卫士+321播放器+红孩子电子商城+植物大战僵尸+智能短信分类管理+豆瓣客户端+手机彩票等等第六阶段:就业面试与指导、现场招聘一个班级有7、8个讲师,其中3个主讲班型:大班70人左右上课形式:讲师一天讲5个小时左右,讲课过程中每敲一行代码,讲解一行代码;课下学员自己找时间练习。
【黑马程序员济南】前端与移动开发就业班笔记DOM讲解:Day03传智播客温馨提示:前几天我们学习过了Html、Css、JS的基本语法及使用,本节我们需要利用之前学习过的知识掌握Js控制样式。
隔行变色childNodes:子节点,元素子节点的NodeList。
[mw_shl_code=css,true] <style>.even {background-color: #999;}.odd {background-color: #ccc;}</style>/** *@author 传智播客*/var ul = document.getElementById("list");//var lis = ul.getElementsByTagName("li");//层级结构childNodes 子节点var children = ul.childNodes;var j = 0;for (var i = 0; i < children.length; i++) {if (children.nodeType === 1) {//元素节点if (j % 2 === 0) {//索引是偶数在页面上是奇数children.className = "odd";} else {children.className = "even";}j++;}}节点属性节点分为属性节点、文本节点、元素节点、注释节点。
节点的信息:nodeName 标签名,属性名 #text # document nodeType 节点类型nodeValue 属性值,文本值,元素不可用/***@author 传智播客*///查找元素var ul = document.getElementById("list");//获取元素的子节点var children = ul.childNodes;var j = 0;for (var i = 0; i < children.length; i++) {if (children.nodeType === 1) {if (j % 2 === 0) {//取余children.className = "odd";} else {children.className = "even";}j++;}}//节点常用的属性nodeType nodeValue nodeName//文本节点/*console.log(children[0].nodeType);//3console.log(children[0].nodeValue);//文本节点的内容console.log(children[0].nodeName);//#text*///元素节点/*console.log(children[1].nodeType);//1console.log(children[1].nodeValue);//元素节点的值都是nullconsole.log(children[1].nodeName);//标签名*///注释节点/*console.log(children[3].nodeType);//8console.log(children[3].nodeValue);//注释的内容console.log(children[3].nodeName);//#comment*///console.log(children);//属性节点var attrNode = ul.getAttributeNode("id");console.log(attrNode.nodeType);//2console.log(attrNode.nodeValue);//属性值console.log(attrNode.nodeName);//属性名菜单切换下面我们利用排他思想和元素属性来做一个菜单切换的案例 /***@author 传智播客*///找人var ul = document.getElementById("list");var nodes = ul.childNodes;//给每一个li注册事件点击当前li排他for (var i = 0; i < nodes.length; i++) {var node = nodes;//每个节点if (node.nodeType !== 1) {//1是元素节点不等于1就不是元素节点continue;}node.onclick = function () {//排他//干掉所有人for (var i = 0; i < nodes.length; i++) {var node = nodes;if (node.nodeType !== 1) {//不是元素节点continue;}node.className = "";}//留下我自己this.className = "current";};}下面给大家介绍另一个属性element.children ,表示所有的子元素。
1、Collection:集合框架的由来:因为每一个容器对象的自身的数据结构不同,所以对它们进行单独的描述和对象封装,并非断的向上抽取共性内容,这样变形成了集合框架。
概念:集合就是一个容器、用来存储对象、长度可变。
理解:其实班级就是一个容器,班上的每一个学生都是单独封装了功能的对象,因为班级中的人数由于有人请假天天都再转变,所以长度是可变的,常见方式:1、增加:add();增加一个元素addAll();增加一部份元素。
2、删除:Remove();删除一个元素,会返回boolean类型,其实用到是equals方式,所以判断是不是有符合要求的元素。
若是删除成功会改变集合的长度。
下面同理。
removeAll();删除全数Clrea();清空容器总结:在这里要尤其注意,面试题中常常考到。
3、判断:Contains();是不是包括,也就说要所有的都包括在其中才算包括,不然不算包括。
isEmpty();集合是不是为空Size();集合长度。
4、取:retainAll();取交集。
理解总结:班级就是一个容器,班级中进来一名新生就是Add()添加一个元素,来了一堆同窗就是addAll,班上出去一个学生就是remove删除一个,出去一部份就是removeAll删除一部份,班级是不是有人,isEmpty,班上是不是包括张三contains,班上有多少人size。
班上是不是包括隔壁班的同窗retainAll.去交集。
集合利用细节:1、直接存储大体数据类型值也是可以的,因为后有自动装箱,会将大体数据类型转成对象,绝对不行。
Eg:(3)2、集合对象中存储的实际上是对象的元素的引用。
3、Add的参数是Object类型,可以接收所有的类型的对象,会出现向上转型,掏出元素时类型仍是Object不能利用具体对象的特有内容,想要利用特有内容向下转型。
Eg:Object obj="obj";想要掏出访问子类的特有方式,向下转型,String s=(String)();sop());|--List:有序列表(存取顺序是一致的)因为该子体系元素中有索引或角标,可以存储重复的元素。
传智播客前端与移动开发学院前端开发工程师、移动HTML5开发工程师、全栈开发培训 第三天内容
一. 复习:
1各种运算符
1.1 算术运算符:
+,-,*,/,%,()
1.2 自增自减运算符
a++ ,++a , a-- , --a
如果是先加,会先给a加一以后再进行运算
如果是后加,会先进行运算,再给a 加一。
1.3 逻辑运算符:
&& 与
|| 或
!非
1.4 关系运算符(比较运算符)
> , < , >= , <= , == , === , != , !==(不全等)
==:判断内容,不关心类型
===:既关心内容,又关心类型
NaN比较特殊,特殊到自己都不等于自己。
1.5 赋值运算符:
=:var a ; var b ; var c ; a = b = c = 1;
1.6 逗号运算符:
,:var a , b , c ;
2数据类型的转换:
2.1 强制转换:
通过使用Number:Number(),parseInt,parseFloat
String: .toString(), String()
Boolean: Boolean()
方法来将数据转成对象的数据类型。
2.2 隐式转换:
Number: +a; a-0; a * 1 ,a / 1, a%1
string: a + “”;
Boolean: !!a==>!!Boolean(a)
传智播客前端与移动开发学院前端开发工程师、移动HTML5开发工程师、全栈开发培训 在javascript中所有的数据都可以转成boolean,只有
false,0,NaN,””,undefined在进行boolean转换的时候会转成false,其余的都为true. 3流程控制:
3.1 if if-else if-elseif -else
你若不离不弃,我必生死相依
var a = “不离不弃”;
if (a ==”不离不弃”){
alert(“生死相依”);
}
else {
alert(“不会生死相依”);
}
3.2 switch case :
进行一系列条件的判断
var a = “”;
switch (a){
case “1”:
alert(“星期一”);
break;
case “1”:
alert(“星期一”);
break;
case “1”:
alert(“星期一”);
break;
default:
alert(“不知道你的a是什么“);
break;
}。