Collection(容器)

0、容器 特点: 存储各种各样的数据,以对象为单位; 大小容量没有限制; 存储元素最后变成object类型(统称为object类型)。 1、容器接口 Collection :集合 Set :元素无序不重复。 SortedSet :有序set,可按大小自动排序,但仍然不重复。 List :元素有序可重复。 Map :(key-value)键值对,统称为元素。key是唯一的,值可以重复。且所有元素是无序的。 SortedMap :有序Map,所有元素按照key的大小排序,元素不重复。 2、常用实现类 数据结构 :逻辑关系,物理关系 3、接口及其实现类特点 1)Set接口 1、Set接口的特性与其实现类是什么? 元素无序; 元素不重复;当添加重复的元素时,它会采用屏蔽技术屏蔽掉。 它的常用实现类: HashSet. 2、HashSet实现类的特性? 元素无序; 元素不重复;当添加重复的元素时,它会采用屏蔽技术屏蔽掉。 个性: 判断元素相等依赖 equals()方法, 但,同时,它还依赖 hashCode()方法。 注意: 在Java语言中,规定 任何一个对象均有一个哈希编码,该编码是一个int型的整数,由系统自动生成。规则 相等的对象拥有相同的哈希编码值。 自定义类如果使用HashSet必须重写equals()和HashCode()方法。 2)SortedSet 接口 1、SortedSet接口的特性及其实现类: 元素自动排序(按大小); 元素不重复; 当添加重复的元素时会采用屏蔽技术屏蔽掉。 它的常用实现类: TreeSet . 2、TreeSet实现类的特性: 元素自动排序(按大小); 元素不重复; 当添加重复的元素时会采用屏蔽技术屏蔽掉。 个性: 判断元素相等依赖equals(),但它实质上依赖 compareTo()方法。...

June 1, 2018 · 2 min · sunbufu

html

一、HTML定义 HTML是英文Hyper Text Mark-up Language(超文本标记语言)的缩写,它规定了自己的语法规则,用来表示比“文本”更丰富的意义,比如图片,表格,链接等。浏览器(IE,FireFox等)软件知道HTML语言的语法,可以用来查看HTML文档。目前互联网上的绝大部分网页都是使用HTML编写的。 二、HTML是什么样的 简单地来说,HTML的语法就是给文本加上表明文本含义的标签(Tag),让用户(人或程序)能对文本得到更好的理解。 下面是一个最简单的HTML文档: <html> <head> <title>Hello World</title> </head> <body> <a href="http://www.baidu.com">百度</a> </body> </html> 所有的HTML文档都应该有一个<html>标签,<html>标签一般包含两个部分:<head>和<body>。 <head>标签用于包含整个文档的一般信息,比如文档的标题(<title>标签用于包含标题),对整个文档的描述,文档的关键字等等。文档的具体内容就要放在<body>标签里了。 <a>标签用于表示链接,在浏览器(如IE,Firefox等)中查看HTML文档时,点击<a>标签括起来的内容时,通常会跳转到另一个页面。这个要跳转到的页面的地址由<a>标签的href属性指定。上面的<a href="http://www.baidu.com">中,href属性的值就是http://www.baidu.com。 三、HTML文档可以包含的内容 通过不同的标签,HTML文档可以包含不同的内容,比如文本,链接,图片,列表,表格,表单,框架等。 1. 文本 HTML对文本的支持是最丰富的,你可以设置不同级别的标题,分段和换行,可以指定文本的语义和外观,可以说明文本是引用自其它的地方,等等等等。 2. 链接 链接用来指出内容与另一个页面或当前页面某个地方有关。 3. 图片 图片用于使页面更加美观,或提供更多的信息。 4. 列表 列表用于说明一系列条目是彼此相关的。 5. 表格 表格是按行与列将数据组织在一起的形式。也有不少人使用表格进行页面布局。 6. 表单 表单通常由文本输入框,按钮,多选框,单选框,下拉列表等组成,使HTML页面更有交互性。 7. 框架 框架使页面里能包含其它的页面。 四、HTML文档格式详细说明 前面介绍了HTML文档的基本格式,下面再做一个详细说明。 HTML文档可以用任何文本编辑器(比如记事本,UltraEdit等)创建,编辑,因为它的内容在本质也只是一些文本。 在HTML文本中,用尖括号括起来的部分称为标签。如果想在正文里使用尖括号(或者大与号小与号,总之是同一个东西),必须使用字符转义,也就是说转换字符的原有意义。<应该使用&lt;代替,>则使用&gt;,至于&符号本身,则应该使用&amp;替代(不得不说的是有很多HTML文档没有遵循这个规则,常用的浏览器也都能够分析出&到底是一个转义的开始,还是一个符号,但是这样做是不推荐的)。 标签本质上是对它所包含的内容的说明,可能会有属性,来给出更多的信息。比如<img>(图片)标签有src属性(用于指明图片的地址),width和height属性(用于说明图片的宽度和高度)。HTML里能使用哪些标签,这些标签分别可以拥有哪些属性,这些都是有规定的,知道了这里说的基本知识之后,学习HTML其实也就是学习这些标签了。本文后面会对常用的HTML标签做出简短的介绍。 标签通常有开始部分和结束部分(也被称为开始标签和结束标签),它们一起限定了这个标签所包含的内容。属性只能在开始标签中指定,属性值可以用单引号或双引号括起来。结束标签都以/加上标签名来表示。有时候,有些标签并不包含其它内容(只包括自己的属性,甚至连属性都没有),这种情况下,可以写成类似这样:<img src="logo.gif" />。注意最后的一个空格和一个反斜杠,它说明这个标签已经结束,不需要单独的结束标签了。 某些标签包含的内容中还可以有新的标签,新的标签名甚至可能还可以与包含它的标签的名称相同(哪些标签可以包含标签,可以包含哪些标签也是有规定的)。比如: <div> <div>分类目录...</div> <div>当前分类内容列表...</div> </div> 在这种情况下,最后出现的标签应该最先结束。 HTML文档里所有的空白符(空格,Tab,换行,回车)会被浏览器忽略,唯一的例外是空格,对空格的处理方式是所有连续的空格被当成一个空格,不管有一个,还是两个,还是100个。之所以有这样的规则是因为忽略空白符能让使用HTML的作者以他觉得最方便的格式来排列内容,比如可以在每个标签开始后增加缩进,标签结束后减少缩进。由于英语文本中空格用得很普遍(用于分隔单词),所以对空格做了这样的特殊处理。如果要显示连续的空格(比如为了缩进),应该用&nbsp;来代表空格。 五、常用标签介绍 1、文本 最常用的标签可能是<font>了,它用于改变字体,字号,文字颜色。 <font size="6">6</font> <font size="4">4</font> <font color="red" size="5">红色的5</font> <font face="黑体">黑体的字</font> 加粗,下划线,斜体字也是常用的文字效果,它们分别用<b>,<u>,<i>表示:...

June 1, 2018 · 1 min · sunbufu

Java IO流

一、流(Stream) 1、流(Stream)的定义 流是个抽象的概念,是对输入输出设备的抽象,Java程序中,对于数据的输入/输出操作都是以“流”的方式进行。设备可以是文件,网络,内存等。 流具有方向性,至于是输入流还是输出流则是一个相对的概念,一般以程序为参考,如果数据的流向是程序至设备,我们成为输出流,反之我们称为输入流。 可以将流想象成一个“水流管道”,水流就在这管道中形成了,自然就出现了方向的概念。 2、流的特点 1) 方向性 2) 连续性 3) 单位性 3、IO流的分类 从方向性分:输入流(Input Stream)和输出流(Output Stream) 从单位性分:字节流(8为二进制(bit))和字符流 从功能分(从是否有数据源):节点流和处理流 4、在Java中,所有的流均来自于java.io包四个抽象类 1)抽象的字节输入流类:InputStream 2)抽象的字节输出流类:OutputStream 3)抽象的字符输入流类:Reader 4)抽象的字符输出流类:Writer 二、四个基本抽象类 使用步骤: 1)声明对象 2)创建对象 3)使用(输入输出) 4)刷新(flush()输出的时候) 5)关闭 1、抽象的字节输入流类(InputStream)及其文件操作实现类(FileInputStream) 1)以字节方式来读取数据 2)提供的常用方法: int read();//用来读取一个字节,反馈这个字节对应的整数[0, 255]。当返回-1是,表示读取结束 void close();//关闭字节输入流,释放所占资源,确保数据安全 2、抽象的字节输出流类(OutputStream)及其文件操作实现类(FileOutputStream) 1) 将给定的数据以字节方式输出到文件中; 2) 它提供的常用方法: void write( int x );// 将给定的整数以字节方式输出。因此,当给定的整数超出了[ 0, 255 ]时,则会失真。 void flush();// 将缓冲区中的数据一次性输出到目的地。确保数据输出成功。 void close();// 关闭字节输出流,释放所占资源,确保数据安全。 注意:必须使用flush()方法。 Windows文件中输出换行使用/r/n,即回车换行。(回车指:将光标回到该行的首部。换行指:将光标移到下一行。) 3、字符输入流类(Reader)及其文件操作实现类(FileReader) 1)它以字符的方式来读取数据。 2)他提供的方法: int read();// 它以字符方式来读取数据,并反馈这个数据的int型值。因此,其范围是[ 0, 65535 ];当反馈一个-1时,则结束。 void close();// 关闭字符输入流。 4、字符输出流类(Writer)及其文件操作实现类(FileWriter) 1) 将给定的数据以字符方式输出。 2) 它提供的常用方法: void write( int x );// 将给定的整数以字符方式输出,数据在[ 0, 65535 ]范围中。 void flush();// 将缓冲区中的数据一次性输出,确保输出成功。 void close();// 关闭输出流,释放所在占资源,确保安全。 5、字节流和字符流的区别: 1) 字节流可以处理任意类型的文件。 2) 字符流只能用来处理文本文件。 三、四个缓冲流类(属于处理流) 作用:用来提高输入和输出的效率...

June 1, 2018 · 2 min · sunbufu

javascript

一、变量 1.1 声明变量 JavaScript是一种弱类型的语言。 变量的声明(变量使用之前必须加var声明,编程规范) 可以通过var关键字来声明一个变量 典型声明方式: var a=1; var a, b=2, c; var date = new Date(); var array = new Array(); 不能使用未经声明的变量。 全局变量 在方法外部声明的变量 方法内部,没有加var关键字声明的变量 (小心使用,会对全局变量造成污染) 局部变量 方法内部,使用var声明的变量 补充: Javascript:void(0); 用于超链接 Javascript伪协议 在a标签中的href的内容添加以上内容。 变量的命名规则 1.变量命名必须以英文字母或是下标符号”_”或者”$”为开头。 2.变量名长度不能超过255个字符。 3.变量名中不允许使用空格。 4.不用使用脚本语言中保留的关键字及保留符号作为变量名。例如:var、*等。 5.变量名区分大小写。(javascript是区分大小写的语言)** 1.2 变量的类型 undefined 未定义(声明了变量,但是未赋值) null 空(赋值为null),属于undefined的衍生类 boolean 布尔类型(true,false) string 字符串,(单引号、双引号均可) 5)number 数值类型: 包括整数和小数,NaN(Not a Number),Infinity(无穷大), -Infinity(负无穷小) object 对象类型 1....

June 1, 2018 · 3 min · sunbufu

JDBC

一、什么是JDBC Java提出的一套用来连接数据库的标准(接口)。起到一种桥梁的作用。 1、JDBC的常用类 Java使用jdbc编程,必须使用:来自java.sql.*;的类和接口 java.sql.Driver;//所有数据库的驱动均实现该接口 java.sql.DriverManage;//驱动管理类 java.sql.Connection;//连接的接口 java.sql.statment;//会话的接口 java.sql.,Result;//结果集的接口 二、JDBC的使用步骤 1、加载驱动 Class.forName("包名", "类名"); 2、获得链接 **url(同一资源定位器):**协议名://主机名:端口号:资源名 DriverManager.getConnection("url", username, password); 3、创建会话 1)Statement Statement stm = con.createStatement(); 2)PreparedStatement(预编译的Statement) 可以预防SQL注入。 PreparedStatement pstmt = con.prepareStatement(sql);//需要预先编译的sql语句 4、执行SQL,获取结果集 1)executeQuery(String sql) 执行SELECT语句,它返回的是查询后得到记录集(resultset)。 2)executeUpdate(String sql) 执行UPDATE,INSERT,DELETE语句,它返回的是语句执行后说影响到的记录条数(int)。对于 CREATE TABLE 或 DROP TABLE 等不操作行的DDL语句,executeUpdate 的返回值总为零。 ResultSet rs = stm.executeQuery(sql); 3)execute(String sql) 执行任何sql语句,也就是前两者之一。返回值是第一个结果的表现形式。当第一个执行结果是查询语句时,返回true,可以通过getResultSet方法获取结果;当第一个执行结果是更新语句或DDL语句时,返回false,可以通过getUpdateCount方法获取更新的记录数量。 4)executeBatch 批处理操作,在处理大量相同操作时可以明显提高效率。 con.setAutoCommit(false); // 关闭自动执行 stmt.addBatch("INSERT INTO employees VALUES (1000, 'Joe Jones')"); stmt.addBatch("INSERT INTO departments VALUES (260, 'Shoe')"); stmt....

June 1, 2018 · 2 min · sunbufu