- 博客(44)
- 资源 (1)
- 收藏
- 关注
原创 算法:判断括号是否匹配
import java.util.Scanner;import java.util.Stack;/** * 判断括号是否匹配 ((())) () */public class judgeParentheses { public static boolean isValid(String s) { Stack<Character> stack = new Stack<>();//创建一个栈 for (int i = 0; i <
2021-07-26 22:59:16
575
原创 JSP EL
Day47 JSPJSP1.1 jsp解决了什么问题Servlet中,要想将数据等内容打印到客户端页面中,需要在java代码中拼接大量的html代码,非常的不合理。Jsp就是解决这个问题。只需要把数据交给jsp,由jsp来完成数据的展示工作。jsp与servlet的区别与联系jsp和servlet的区别和联系:1.jsp经编译后就变成了Servlet.(JSP的本质就是Servlet,JVM只能识别java的类,不能识别JSP的代码,Web容器将JSP的代码编译成JVM能够识别的java类
2021-03-19 00:23:24
163
原创 servlet
Day47 Servlet、跳转方式、ajax交互软件构成和分层Response2.1 Http响应消息*格式:HTTP/1.1 200 OKContent-Type: text/html;charset=UTF-8Content-Length: 101Date: Wed, 06 Jun 2018 07:08:42 GMT(空行)<span class="katex--inline">Title</span>hello , response
2021-03-18 00:28:08
127
原创 servlet
Day46 Tomcat、ServletWEB流程1.1 软件架构B/S : 浏览器/服务端基于浏览器,比如网页版百度,网页版淘宝等,只要有浏览器,通过地址 就可以访问C/S : 客户端/服务端有指定的客户端.比如PC端淘宝APP,或者手机端淘宝APP,或者QQ的APP等,需要依赖一个特定的客户端来访问1.2 资源分类静态资源 : 可以称为静态页面,所有用户访问后,得到的结果是一致的,该资源可以直接被浏览器解析,比如 : html/css/js等 内容都是在页面中写死的,想要更改,一般要改
2021-03-17 00:07:16
291
原创 day45扫雷
插件// 使用闭包,解决$命名冲突问题(function ($) {/****/function change() {}/** * 对外提供的接口 * * 必须传递 行 row,列 column,雷的个数 mine_num,显示画板的位置 obj 盒子的ID值 */$.fn.mineClearance = function (options) { // console.log(options); // var obj1 = {name:'张三',age:16};
2021-03-15 22:36:49
130
原创 扫雷
Day44 扫雷HTML有选择难度的下拉列表开始按钮重新加载按钮画板(显示的小方格)标题提示文字#set_num 是选择难度#start 是开始游戏#refresh 是重新加载#content 画板.tile默认样式.showed 已点击样式.boom 雷的样式.tile current 鼠标移入样式.tile tag 右键小红旗样式#title 友情提示2. CSS布局按钮样式提示文字样式格子默认样式已点击样式鼠标移入样式雷的样式小红旗样式
2021-03-14 23:22:28
113
原创 day43插件 ajax json 三级联动
Day43 插件、Ajax、JSON、扫雷插件1.1 概述插件是对功能的扩展 ,比如jQuery中没有的,或者是对已有的进行扩展,都是插件不同的插件完成不同的功能,jquery不可能包含所有的功能,我们可以通过插件扩展jquery的功能。jquery有着丰富的插件,使用这些插件能给jquery提供一些额外的功能。注意,如果需要引入的插件,是基于jQuery的插件,则我们再使用时,必须先引入jQuery,再引入插件,再进行编码1.2 jQuery.color.jsAnimate中,不能进
2021-03-12 08:38:25
163
原创 day40节点操作 BOM
Day40 事件、属性操作、节点操作事件1.1 组织a标签跳转1.2 鼠标事件1.2.1 移入移出onmouseover鼠标移入事件:在鼠标指针移动到元素上时触发。onmouseout 鼠标移出事件:在鼠标指针移出元素后触发onmouseenter鼠标进入事件:在鼠标指针进入到元素上时触发。onmouseleave 鼠标离开事件:在鼠标指针离开元素后触发1.2.2 获得焦点/失去焦点onfocus获取焦点事件:在鼠标光标获取输入框焦点时触发onblur失去焦点事件:在鼠标光标
2021-03-09 00:11:33
161
原创 day39 DOM操作/事件
Day39 DOM操作、事件DOM操作1.1 webAPI(1)、api的概念API(Application Programming Interface,应用程序编程接口)是一些预先定义的函数,目的是提供应用程序与开发人员基于某软件或硬件得以访问一组例程的能力,而又无需访问源码,或理解内部工作机制的细节。例如:alert()、 prompt()、log()、reverse()、getMonths()任何开发语言都有自己的APIAPI的特征输入和输出(I/O)API的使用方法(console.
2021-03-07 23:12:05
116
原创 js数组函数对象
Day37 数组、函数、对象数组JS : JavaScript1.1 是什么所谓数组,就是将多个元素(通常是同一类型)按一定顺序排列放到一个集合中,那么这个集合我们就称之为数组。数组是一个有序的列表,可以在数组中存放任意的数据,并且数组的长度可以动态的调整。1.2 数组声明1.3 获取数据数组的取值[0]是数组中的第一个元素。[1] 是第二个。数组索引从 0 开始1.4 数组遍历1.5 添加和更改1.6 删除函数2.1 是什么把一段相对独立的具有特定功能的
2021-03-05 00:36:17
347
1
原创 js
Day36 JS初识、变量、数据类型、操作符、流程控制JS初识JS : JavaScript1.1 是什么1、JavaScript的历史Netscape(网景)在最初将其脚本语言命名为LiveScript,是布兰登.艾克发明的。后来Netscape在与Sun合作之后将其改名为JavaScript。JavaScript最初受Java启发而开始设计的,目的之一就是“看上去像Java”,因此语法上有类似之处,一些名称和命名规范也借自Java。JavaScript与Java名称上的近似,是当时Netsc
2021-03-03 22:52:33
158
1
原创 定位 三大特性
Day35 定位、三大特性定位1.1 概述如果,说浮动, 关键在一个 “浮” 字上面, 那么 我们的定位,关键在于一个 “位” 上。定位是我们CSS算是数一数二难点的了,但是,你务必要学好它,我们CSS离不开定位,特别是后面的js特效,天天和定位打交道。不要抵触它,反而要爱上它,它可以让我们工作更加轻松哦!1.2 属性1.3 分类在CSS中,position属性用于定义元素的定位模式,其基本语法格式如下:选择器{position:属性值;}position属性的常用值1.3.1
2021-03-02 22:02:34
665
原创 盒子模型 浮动
Day33 盒子模型、浮动、定位盒子模型1.1 概述其实,CSS就三个大模块:盒子模型、浮动、定位,其余的都是细节。要求这三部分,无论如何也要学的非常精通。所谓盒子模型就是把HTML页面中的元素看作是一个矩形的盒子,也就是一个盛装内容的容器。每个矩形都由元素的内容、内边距(padding)、边框(border)和外边距(margin)组成。这里略过老旧的ie盒子模型(IE6以下),对不起,我都没见过IE5的浏览器。 首先,我们来看一张图,来体会下什么是盒子模型。所有的文档元素(标签)都会生成
2021-03-02 00:42:39
295
原创 day33 选择器 显示模式背景
Day32 CSSCSS1.1 外观属性1.1.1 Colorcolor属性用于定义文本的颜色,其取值方式有如下3种:预定义的颜色值,如red,green,blue等。十六进制,如#FF0000,#FF6600,#29D794等。实际工作中,十六进制是最常用的定义颜色的方式。RGB代码,如红色可以表示为rgb(255,0,0)或rgb(100%,0%,0%)。需要注意的是,如果使用RGB代码的百分比颜色值,取值为0时也不能省略百分号,必须写为0%。1.1.2 行高line-heig
2021-02-28 22:59:48
135
原创 HTML2
Day32 表格、表单、CSS初识表格1.1 概述表格就可以看做数据库表,多少行多少列,列名 等主要用于展示数据1.2 标签1.table用于定义一个表格。2.tr 用于定义表格中的一行,必须嵌套在 table标签中,在 table中包含几对 tr,就有几行表格。3.th /td:用于定义表格中的单元格,必须嵌套在标签中,一对 中包含几对,就表示该行中有多少列(或多少个单元格)。注意 :中只能嵌套标签,他就像一个容器,可以容纳所有的元素1.3 使用方式1.4
2021-02-25 21:26:01
217
原创 html01
Day31 HTML开发工具1.1 编辑器Dw : 控件拖动webStorm : 有收费版Vscode : 快速,有好的插件,加快开发Sublime : 简洁1.2 浏览器火狐 : Gecko谷歌 : webkitIE : Trident浏览器内核浏览器内核又可以分成两部分:渲染引擎(layout engineer 或者 Rendering Engine)和 JS 引渲染引擎擎。2.1 渲染引擎它负责取得网页的内容(HTML、XML、图像等等)、整理讯息(例如加入 CSS 等)
2021-02-24 21:01:10
121
原创 day_30_事务、Properties、连接池
Day30 JDBC事务机制1.1 概述数据库特有的术语,单个逻辑工作单元执行的一系列操作,同步发生数据更新时,防止数据的不一致1.2 应用场景设想网上购物的一次交易,其付款过程至少包括以下几步数据库操作:· 更新客户所购商品的库存信息· 保存客户付款信息–可能包括与银行系统的交互· 生成订单并且保存到数据库中· 更新用户相关信息,例如购物数量等等正常的情况下,这些操作将顺利进行,最终交易成功,与交易相关的所有数据库信息也成功地更新。但是,如果在这一系列过程中任何一个环节出了差错,例如
2021-02-24 00:06:00
112
原创 MySQL03和jdbc
Day28 MySQL行转列1.1 什么是行转列正常的查询结果是这样可是我想要的结果是这样…通过SQL语句 实现这样的功能,就叫行转列1.2示例数据准备有 id,名字,课程,成绩create table test_9(id int,name varchar(22),course varchar(22),score decimal(18,2));insert into test_9 (id,name,course,score)values(1,‘小王’,‘java’,99)
2021-02-21 12:08:18
163
原创 MySQL2
Day27 MySQLSQL1.1 SQL介绍SQL,它的全称叫Structured Query Language,结构化的查询语言。之所以出现这个东西,是为了统一/屏蔽不同数据库厂商生产的数据库产品之间的差异。SQL定义了一系列标准和规范,数据库厂商也需要按照这个规范来,当然会有一些细小的差别,相比没有规范来说,要好很多比如 项目后期由于某些原因,需要进行数据库更换,那么操作数据库的语句就都需要更改,而SQL出现,可以避免这个问题1.2简单DDLDDL : Data Definition
2021-02-04 22:40:13
402
原创 MySQL
Day26 MySQL软件安装参考教程1 检查是否安装(安装就卸载,未安装就安装,保证版本一致)2 Navicat安装3 测试MySQL数据库概述1.1数据(Data)在JavaSE中,我们说过这样一句话,数据要运算,必须先存储,那么java中存储数据是使用变量,那么计算机怎么存储? 文件Java中变量存储的数据,可以跨平台,因为JVM跨平台,那么计算机存储的数据呢?不会跨平台而数据库就可以解决操作系统之间的跨平台1.2数据库(DataBase)数据库,顾名思义,就是遵循一
2021-02-03 21:50:10
640
原创 Lambda
Day25 1.8新特性Lambda1.1 概述lambda表达式 是一种没有名字的函数,也可以称为闭包,是java8的新特性本质就是一个匿名内部类,还有叫箭头函数的1.2 为什么使用LambdaLambda 是一个匿名函数,我们可以把Lambda 表达式理解为是一段可以传递的代码(将代码像数据一样进行传递)。使用它可以写出更简洁、更灵活的代码。作为一种更紧凑的代码风格,使Java的语言表达能力得到了提升。1.3 和匿名内部类对比1.4 特点允许把方法作为一个参数,进行传递
2021-02-02 23:50:06
159
原创 网络编程 正则表达式
Day24-网络编程&正则表达式网络编程1.1 概述Java是 Internet 上的语言,它从语言级上提供了对网络应用程 序的支持,程序员能够很容易开发常见的网络应用程序。Java提供的网络类库,可以实现无痛的网络连接,联网的底层 细节被隐藏在 Java 的本机安装系统里,由 JVM 进行控制。并 且 Java 实现了一个跨平台的网络库,程序员面对的是一个统一 的网络编程环境。1.2 网络基础计算机网络: 把分布在不同地理区域的计算机与专门的外部设备用通信线路互连成一个规 模
2021-02-02 00:11:22
339
原创 多线程
Day23-多线程多线程1.1 守护线程1.1.1 概述守护线程 又叫兜底线程每个程序运行当中,都会默认开启一个守护线程,用于监听我们正常的程序简单来说,就是没有任何一个线程的时候,JVM就需要退出了,这个时候守护线程也会退出,主要完成垃圾回收等功能但是 我们可以使用Thread.setDameon() 方法 把某个线程设置为守护线程但是必须在启动 start之前,否则报错1.1.2 使用1.2 Timer1.2.1 概述定时器 计划任务,只要有一个任务监听 就会
2021-01-31 16:42:45
121
原创 多线程
Day22-多线程多线程1.1 基本概念:程序、进程、线程程序(program)是为完成特定任务、用某种语言编写的一组指令的集合。即指一 段静态的代码,静态对象。进程(process)是程序的一次执行过程,或是正在运行的一个程序。是一个动态的过程:有它自身的产生、存在和消亡的过程。——生命周期 如:运行中的QQ,运行中的MP3播放器 程序是静态的,进程是动态的 进程作为资源分配的单位,系统在运行时会为每个进程分配不同的内存区域线程(thread),进程可进一步细化为线程,是一
2021-01-28 21:53:17
129
原创 2021-01-27
Day21-IOIO1.1 数据流1.1.1 概述为了方便地操作Java语言的基本数据类型和String的数据,可以使用数据流。数据流有两个类:(用于读取和写出基本数据类型、String类的数据)DataOutputStream按照一定的格式输出,再通过DataInputStream以一定格式读入。由于可以得到java的各种基本类型甚至字符串,这样对得到的数据便可以方便地处理。这在通过协议传输的信息的网络上是非常适用的。DataInputStream 和 DataOutputStre
2021-01-27 23:37:04
85
原创 IO
Day19-IO复习之数据结构数据结构是计算机存储和组织数据的方式,简单来说 就是用来存储数据的,只不过根据存储的方式和操作以及特性不同,分为几类数组 : 有序可重复,查询快更改快,删除添加慢链表 : 有序可重复,添加删除快,查询更改慢散列表 : 无序不可重复,存储键值对,key唯一,value可以重复Tree : 无序不可重复,元素按照某种规则自动排序,(Comparator和Comparable)他们的本质都是用来保存数据的,我们需要把他们的特征记住,然后再根据我们的需求合理选择数
2021-01-26 23:29:36
163
原创 day18比较器/map/散列
Day17-集合Collection1.1 排序1.1.1 Comparable比较器有两种 : 1 元素自身比较器, 2 比较器类思考 : 为什么字符串,Integer,Date可以排序? 因为都实现了 implements Comparable 因为使用treeSet在进行数据添加的时候,会自动调用该对象的compareTo()方法和集合内元素进行比较如果我们想要存储自定义类型怎么办? 需要实现该接口才行添加的时候 会自动调用该对象的compareTo方法
2021-01-25 00:14:14
124
原创 day_17_集合概述、List、Set、比较器
Day17-集合Collection1.1 概述通过继承体系发现,集合中两大分类,List和Set 并且 两个都继承了Collection那也就意味着,Collection中的方法是List和Set都有的,所以我们先讲Collection,看看它里面都有什么方法Collection 集合 只能存储单个元素,并且只能保存引用数据类型,不能保存基本数据类型因为 底层就是 Object[] 数组,既然是Object 所以 即可以说 只能保存Object单一元素,也可以说可以保存任何元
2021-01-22 23:22:46
130
原创 api 异常机制
SystemSystem类提供的public static long currentTimeMillis()用来返回当前时 间与1970年1月1日0时0分0秒之间以毫秒为单位的时间差。此方法适于计算时间差。System类代表系统,系统级的很多属性和控制方法都放置在该类的内部。 该类位于java.lang包。由于该类的构造器是private的,所以无法创建该类的对象,也就是无法实 例化该类。其内部的成员变量和成员方法都是static的,所以也可以很方便 的进行调用。成员变量System.
2021-01-22 00:11:44
301
原创 常用API
Day15-常用APIString1.1 概述java.lang.String : 字符串类,并且该类加 final修饰 底层就是char数组 private final char value[]; 所以 字符串很多特性 就是数组的特性 1 字符串一旦创建不可更改 2 为了提升字符串的访问效率,Java中提出了字符串常量池,相当于是一个缓存区 引用类型对象应该保存在堆内存,但是字符串不同,保存在静态区的字符串常量池中 3 在程序的执行过程中,如
2021-01-20 22:06:08
89
原创 day14设计模式 内部类
Day14内部类1.1 概述当一个事物的内部,还有一个部分需要一个完整的结构进行描述,而这个内 部的完整的结构又只为外部事物提供服务,那么整个内部的完整结构最好使 用内部类在Java中,允许一个类的定义位于另一个类的内部,前者称为内部类,后者 称为外部类。Inner class一般用在定义它的类或语句块之内,在外部引用它时必须给出完 整的名称1.2 分类Static成员内部类非static成员内部类局部内部类匿名内部类1.3 成员内部类变量 : 成员变量 : 成员内部类
2021-01-19 23:01:11
98
原创 day_13_Object、类关系、内部类、设计模式
Day13Object1.1 概述Object : 是java中 提供的一个根类(祖宗)所有类都直接或者间接的继承了Object如果一个类没有显示继承一个父类的话,那么该类默认继承Object既然Object是所有类的祖类,也就意味着 Object中的方法是所有类都有的功能Object xxx = new xxxx() ; 是可以发生多态的因为多态的原因,如果一个方法需要传递的数据,我们不能确定数据的类型的时候,可以写ObjectDay13Object1.1 概述
2021-01-18 23:13:42
97
原创 day12多态 抽象 接口 object
Day12多态1.1 相关知识JVM特性 : 多线程,跨平台,面向对象,自动垃圾回收机制面向对象特性 : 封装性,继承性,动态性(多态),抽象多态相关知识点 : 软件设计六大原则 里氏替换原则 : 能够使用父类的地方就一定可以使用子类 1 单一职责原则 : 功能职责单一,只拥抱一种变化 2 里氏替换原则 : 所有在使用父类的情况下,都可以使用子类 3 依赖倒置原则 : 高层通过抽象依赖底层, 4 接口隔离原则 :
2021-01-17 19:27:31
140
原创 day11继承
Day11继承1.1 是什么[java 中只支持单继承,一个类只能有一个父类什么是继承 : 提高代码的复用性,父类的功能,子类可以直接使用,使子类功能更加强大 在java中 使用extends 关键字表示 语法 : public class 类名 extends 父类名{ 类体 }目的 : 提高代码重用性*非静态方法可以被继承和重写*静态属性 静态方法 非静态属性都可以被继承和隐藏 但是不能被重写一个类如果没有显示继承另外一个类的话,那么该类默认继承 Obj
2021-01-15 00:24:16
97
原创 day10 this static
Day10面向对象1.1 传值和传引用// 基本数据类型 保存值的大小 , 引用数据类型保存内存地址// 传值 基本类型传递// 局部变量 属于栈帧私有化 栈帧独享1.2 区分成员和构造构造方法 : [权限修饰符] 类名(参数) {方法体}作用 : 创建对象,初始化成员属性方法声明 : [修饰符列表] 返回值类型 方法名(参数) {方法体}方法名符合命名规则即可 : 字母,下划线,美元符号,数字,不能数字开头,不能使用关键字和保留字,建议望文知义, 驼
2021-01-13 23:36:25
86
原创 day09 面向对象
day09面向对象1.1 概述面向过程 : 侧重分步骤比如做菜1 买菜,买各种食材,买各种调料2 开火,烧油3 翻炒4 出锅…面向对象 : 侧重分类/模块比如做菜1 完成做菜,涉及到的事物有 : 厨师,食材,工具2 找个厨师,交给他3 厨师.买食材4 厨师.使用工具做菜面向过程就是分析出解决问题所需要的步骤,然后用函数把这些步骤一步一步实现,使用的时候一个一个依次调用就可以了;面向对象是把构成问题事务分解成各个对象,建立对象的目的不是为了完成一个步骤,而是为了描叙某个
2021-01-12 21:57:51
107
原创 day08排序 二分查找
day08排序就是让元素按照一个大小规则进行排序存储1,3,2,5,7,41,2,3,4,5,77,5,4,3,2,1比如 我们存储了班级内所有学生考试成绩Double [] scores = {xxx,xxx,xxx,xxx,xxx,xxx};想要查看前三名怎么办?降序排序,取前三个即可1.1 冒泡排序冒泡排序 : 1 比较相邻的两个元素,如果第一个比第二大,就交换位置 2 对每一对相邻的元素做同样的工作,从开始一对到最后一对,当一轮比较完之后,最后的元素,一定是最
2021-01-11 21:32:48
137
原创 day06数组
day06数组数组 是引用数据类型 变量,只能存储单个元素,想要存储多个元素,就需要使用数组数组 是一个源自底层的数据结构,并且几乎在任何语言中,都是最基础的数据结构数组 又称为 索引数组(index)1.1 数据结构数据结构 : 就是计算机对数据存储的形式,和数据操作的形式 精心选择的数据结构可以带来更高的运行或者存储效率数据操作 增删改查1.2 数组概述和特性 并且 数组中元素的类型必须一致,意味着空间大小一致 数
2021-01-08 17:43:44
160
原创 练习:递归 斐波那契数列
package Day06;/**1、实现代码:按顺序打印一个数字的每一位(例如1234 打印出1 2 3 4)2、实现代码:写一个递归方法,输入一个非负整数,返回组成它的数字之和.使用for实现斐波那契数列 传入位数 ,求 第n位的值传入一个值,判断该值在斐波那契数列的第几位上,如果没有就返回-1,如果有就返回位数@author 10099*/public class digui_fabanacci {public static void main(String[]
2021-01-07 12:58:10
246
原创 2021-01-04
day05递归1.1 概述和基本应用定义 : 在方法体中 调用当前方法基本思想 : 以此类推是递归的基本思想 也是循环的基本思想 所以循环和迭代是等价的(迭代就是循环) 初始值,终止条件,步长 循环是重复执行循环体,而递归是重复执行方法体应用场景 一般树状结构的都可以使用递归查询 比如 文件目录,因为不清楚到底有多少子目录,所以没办法使用for循环嵌套常见问题 : 累加加和 阶乘 斐波那契数列 汉诺
2021-01-04 18:54:13
103
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人