自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(50)
  • 收藏
  • 关注

原创 字符串--替换空格

替换空格实现一个方法,把字符串中的空格替换为”%20”。例如: 输入:”I like this”,输出:”I%20like%20this”。 在网络编程中,如果URL参数中含有特殊字符,如空格、’#’等,可能导致服务器端无法获取正确的参数值。我们需要将这些参数转换成服务器可以识别的字符。转换的规则是在’%’后面跟上ASCII码的两位十六进制的表示。比如空格的ASCII码是32,它的十...

2018-05-24 21:37:24 433

原创 移位--判断一个数二进制表示中1的个数

问题: 给定一个数字,求其二进制表示中1的个数。思路: 假设给定数为n, 判断n&1的结果,如果为1,证明这个数的二进制表示末位为1,则count+1,然后n右移一位递归调用这个方法,直到右移后的这个数为0。代码实现:public class Test { public static int count = 0; public static void ...

2018-05-16 20:34:42 747

原创 数组--二维数组的查找

如何判断一个数是否在二维数组中题目: 给定一个二维数组和一个数,这个数组的每一行按照从左到右递增的顺序排列,每一列按照从上至下递增的顺序排列,判断这个数是否在这个二维数组中。思路: 把这个二维数组看成一个矩阵,给定一个数9,判断9是否在这个二维数组中。 例如,给定一个二维数组如下: 1 2 3 4 5 3 5 6 7 8 ...

2018-05-16 20:13:36 364

原创 表单提交到数据库实现增删查--Java实现

案例分析: 创建一个表单,暂时只实现注册功能,通过用户名即可注册,注册的信息发送给数据库,可以实现增加、删除、查询所有信息等功能。实现: 1.将MySQL驱动包拷贝到WebRoot–>Web-INF–>lib文件夹下;2.在数据库中建一个user表,只有id和name两个字段;3.创建一个表单,点击确定按钮以后提交,连接到doadd.jsp:<%@ pag...

2018-05-16 19:20:54 12957 2

原创 链表--如何检测一个链表是否有环及如何找到环的入口点

如何检测一个链表是否有环有环的链表: 有环的链表是指链表有环路,例如A->B->C->D->E->F->B,遍历的时候B->C->D->E->F->B会形成环路一直循环。思路: 设置一个快指针fast,一个慢指针slow,二者初始都指向链表头,fas

2018-05-16 10:07:06 11075 9

原创 链表--如何寻找单链表的中间结点

如何寻找单链表的中间结点方法一思路:从头到尾遍历链表,得到链表的长度length,求出length/2,就能找到单链表的中间结点。方法二思路:如果是双向链表,我们可以设置两个指针(Java中没有指针,但是引用和指针概念很像),一个从头开始遍历,一个从链表尾开始遍历,两个指针相遇的时候就是链表的中间结点。对于单链表,我们以此为基础,设置两个指针,一个指针一次走一步,另一个指针一次...

2018-05-16 09:42:42 2896 1

原创 链表--如何反向输出单链表

方法一思路: 先把链表反转再遍历输出。方法二思路: 遍历链表,每遍历到一个结点,就把这个结点的值存储到一个栈中,遍历完链表后,再从栈顶弹出每一个结点的值。这种方法会占用额外的空间。方法三思路: 递归,要想输出当前结点的值,先递归输出其后继结点的值。代码实现:public static void printReverseChain(Node curNode)...

2018-05-15 23:11:13 6286 1

原创 链表--如何实现链表的反转

如何实现链表的反转原本的链表: 反转后: 思路: 我们在反转链表的时候,原本每一个结点的next指向其后继结点,现在调整指针方向,让其next指向前面一个结点。但是这样有一个问题,以u,v,w为例,当v指向u以后,就没有指针指向w了,就无法遍历到w了,所以我们在调整v的指针之前,先把w存储起来。然后找到反转链表的头结点,即原本链表中next指针为空的结点。代码实现:p...

2018-05-15 22:46:11 476

原创 链表--如何查找单链表中倒数第k个元素

如何查找单链表中第k个元素思路:因为是单链表,只能从头至尾遍历。可以设置两个引用,其中一个引用比另外一个先前移k-1步,然后两个引用同时开始移动,当先前移的那个引用到达链表尾的时候,即指向为NULL时,另一个引用指向的位置就是所要查找的元素。代码实现:public static Node findElem(Node head,int k) { if(k < 1) ...

2018-05-15 21:41:10 1984

原创 链表--如何从链表中删除重复数据

方法一思路:遍历链表,将链表中的数据存储到HashTable中,若当前遍历的数据在HashTable中存在,说明这个数据重复,可以将这个数据删除掉。代码实现:public void deleteRepeat(Node head){ Hashtable<Integer,Integer> hashTable = new Hashtable<Intege...

2018-05-14 22:27:00 830

原创 链表--如何实现链表的增删操作

如何实现链表的增删操作1.链表 链表是一种最基本的数据结构,其存储特点如下:可以用任意一组存储单元来存储数据元素(存储单元可以不连续),除了存储每个数据元素ai的值外,还存储指示其后继元素的信息。这两部分组成的数据元素ai的存储映像称为结点。N个结点链接在一起称为链表,当结点只包含其后继信息的链表就称为单链表。2.可定义如下链表类来存储结点信息public class Nod...

2018-05-13 20:51:18 4079

原创 会话追踪--cookie/重写url/隐藏域/session

网络通信协议分类1.有状态的协议:TCP/IP,自从客户端与服务器连接上以后,这个连接会一直保持畅通,持续保持连接状态。 比如:打电话,从双方接通开始,一直到任何一方挂断电话位置,期间一直保持畅通。2.无状态的协议:HTTP,这是一种请求/响应模式的协议,当浏览器发起请求那一刻,与服务器建立了连接,当服务器给客户端浏览器做出响应后,连接就中断了。 比如:今天打开一个网页,看大一条新闻,这个网页放

2017-07-28 16:24:06 3383 1

原创 XML--jdom/dom4j/sax解析XML文件

XML1.XML(extensible markup language ):可扩展标记语言。2.XML特点是,标签可以由用户自己随意扩展。比如,html中标签如何写,属性如何写,属性值如何写,都是有规范的(w3c规定的)。但是在xml文件中,标签没有规范,可以随意扩展。3.XML文件有两个作用: (1)做其它技术的配置文件:<config> <nav> <color>red</co

2017-07-28 14:42:53 486

原创 Linux--rht-vmctl命令/Linux中的帮助使用/Linux中如何执行命令/Linux系统结构/利用通配符批量管理文件

rht-vmctl命令1.用途:rht-vmctl用来控制desktop或者sever这两台虚拟机。2.运行格式:rht-vmctl 参数 虚拟机名称 start ##开启 poweroff ##关闭 rese

2017-07-20 17:06:30 8802

原创 HTTP协议

1.http(hyper text transfer protocol):超文本传输协议,顾名思义,专门用来在网络上传输超文本的协议。2.以下是客户端向浏览器发送的http请求数据:IE浏览器: GET / HTTP/1.1 Accept: text/html, application/xhtml+xml, / Accept-Language: zh-CN User-Agent: Mozil

2017-07-20 16:41:02 316

原创 JSP(二)--九大内置对象/4大范围对比/验证码/重定向

JSP的九大内置对象1.JSP内置对象:就是不用自己定义,直接拿来使用的对象。2.内置对象一共有9个,可以在web服务器解析jsp后得到的java源文件中看到。 例如,有一个jsp页面如下: 访问该jsp页面后,会生成一个java源文件,如下:为了生成第九个内置对象,我们需要修改index.jsp:再次查看java源文件:注意: (1)exception内置对象,需要在jsp文件中添加:<%@

2017-07-20 16:11:41 623 2

原创 JSP(一)--部署web应用/JSP运行原理/在 myeclipse环境中集成tomcat/脚本元素/指令元素/动作元素/动态包含/转发/传递参数

JSP引入1.JSP:java server pages也就是java服务器页面。2.JSP是一套动态网页技术标准。这个标准由各大web服务器厂商实现。3.我们运行一个java程序,需要在源代码中输入main方法,但是我们学习JSP技术,是不需要main方法的。一个JSP页面,必须有web服务器来解析运行。需要注意的是,jsp文件不能双击运行,也不能用浏览器打开运行,也不能javac编译,必须交给w

2017-07-14 16:50:34 576

原创 jQuery

jQuery的引入jQuery就是一个是js类库,对常用的方法和对象进行封装,方便我们使用。 jQuery对象是通过jQuery包装DOM对象产生的对象,虽然jQuery对象是包装DOM对象后产生的,但是jQuery对象不能使用任何DOM对象的方法,同样DOM对象也不能使用jQuery对象的方法。1.DOM编程:var obj = Document.getElementById(id); 获取的o

2017-07-05 23:33:37 282

原创 JavaScript(二)--BOM编程/事件编程/DOM编程/正则表达式

BOM编程1.BOM编程图解: 2.window对象: open():在一个窗口中打开页面 参数一: 打开的页面 参数二:打开的方式。 _self: 本窗口 _blank: 新窗口(默认) 参数三: 设置窗口参数。比如窗口大小setInterval():设置定时器(执行n次) setTimeout():设置定时器(只执行1次) 定时器: 每隔n毫秒调用指定的任务(函数) 参数一:指

2017-07-05 22:49:24 391

原创 JavaScript(一)--变量和数据类型/流程控制语句/函数/网页时钟/基于对象编程

JavaScript使用1.javascript的注释: 单行 // 多行 /* */ 2.css的注释: css 多行注释 /* */ 3.html的注释:<!--注释 -->4.常用的函数:alert("提示框");document.write("向浏览器输出内容");5.javascript的使用方法: (1)内部javacript: 在html页面中使用<script>标

2017-06-28 18:31:54 496

原创 CSS--CSS入门/CSS语法/盒子模型/CSS定位

CSS入门1.HTML:负责网页的结构。 CSS:负责网页的美观。2.CSS的使用方式: (1)行内样式:使用标签内部的style属性给每一个标签设置样式。 缺点:只能控制一个标签的样式,如果标签比较多,工作量比较大,而且更改起来比较麻烦。 <a href="xxxx" style="font-size:19px;color:#090">超链接</a>(2)内部样式:使用style标签,

2017-06-21 23:41:12 439 1

原创 HTML--文本标签/marquee/bgsound/列表标签/超链接标签/img 图像标签/转义字符/表格标签/表单提交/框架标签

HTML入门1.软件结构分类: C-S结构(Client-Server 客户端-服务器端) 典型应用: QQ 特点: (1)必须安装特定的客户端程序 (2)服务器软件升级,客户端的软件同步升级B-S结构(Broswer-Server 浏览器-服务器端) 典型应用: 163网站,华育官网,游戏官网 特点: (1)不需要特定的客户(只需要浏览器软件) (2)服务器软件升级,浏览器客

2017-06-14 23:28:31 1429 1

原创 JDBC(二)--批处理/JDBC获取自增长值/处理大数据文件/事务

JDBC进行批处理1.使用批处理的原因: 之前一次操作只能发送一条sql语句到数据库服务器,效率并不高。假如我们要发送2000条数据,那么必须发送2000条数据。 所以现在可以使用sql缓存区,一次发送多条sql到数据库服务器执行,这种操作就叫做批处理。2.JDBC批处理的API: (1)Statement批处理:void addBatch(String sql) //添加sql到缓存区(暂

2017-06-14 20:38:59 691

原创 JDBC(一)--JDBC核心API/JDBC工具类/Statement/PreparedStatement/CallableStatement

JDBC入门1.之前操作MySQL数据库:使用MySQL客户端工具连接MySQL服务器,发送sql语句到MySQL服务器,执行。2.JDBC:使用Java程序发送sql语句到数据库服务器端执行。JDBC是Oracle-Sun公司设计的一套专门用于Java程序操作数据库的接口。 java.sql:常用接口 javax.sql:扩展或者新特性的一些接口Java不使用JDBC技术连接数据库图解: J

2017-06-07 21:05:21 645

原创 数据库(二)--数据约束 数据库设计 多表查询 MySQL存储过程 触发器 数据库权限问题

数据约束1.给表添加数据约束,从而约束用户操作表的行为。2.默认值约束(default):当一个字段有默认值约束时,如果给表中插入数据时没有给该字段插入,则给该字段分配一个默认值。CREATE TABLE test( NAME VARCHAR(20), gender VARCHAR(2) DEFAULT '男')INSERT INTO test(NAME) VALUES('张三')

2017-06-06 23:02:06 1064

原创 数据库(一)--基本SQL语句

之前学过的存储数据的方式1.集合 好处:效率比较高 弊端:无法得到数据的持久化存储2.IO流 好处:可以得到数据的持久化存储 弊端:频繁地进行IO操作,效率就会比较低3.数据库 好处: (1)得到数据持久化存储; (2)数据管理起来更加方便; (3)效率也比较高。数据库的基本SQL语句使用的是SQLyog客户端。 – 写sql语句,发送给服务端执行 – 在后面可以写注释1.创建库

2017-05-31 23:04:48 946 1

原创 Java学习笔记(十八)--网络编程

网络编程1.网络编程三要素:IP,端口,协议。2.三要素详解: (1)IP:一个计算机的标识(找到这个计算机); 特殊的IP地址: 127.0.0.1 :本地回环地址,用来做一些本地测试。 ping IP地址:用来检测本机是否可以和指定的IP地址计算机进行正常通讯。 ipconfig:用来查看IP地址。 xxx.xxx.xxx.255:广播地址。(2)端口:应用程序都会对应一个端口,用

2017-05-31 20:16:55 317

原创 Java学习笔记(十七)--反射

类加载器1.类的加载:当程序要使用某个类时,如果该类还未被加载到内存中,则系统会通过加载,连接,初始化三步来实现对这个类进行初始化。2.类的加载时机: (1)创建类的实例; (2)访问类的静态变量,或者为静态变量赋值; (3)调用类的静态方法; (4)使用反射方式来强制创建某个类或接口的java.lang.Class对象; (5)初始化某个类的子类; (6)直接使用java.exe命令来

2017-05-22 23:24:07 225

原创 Java实现--线程间通信问题案例

案例:给学生设置和获取姓名和年龄。案例分析:我们把学生对象作为一个资源进行操作,利用设置线程给学生对象设置姓名和年龄,利用获取线程获取姓名和年龄。图解: 可以看出这是一个单生产单消费问题。代码实现: Student – 被设置的资源对应的类package com.edu_01;public class Student { String name; int age;}SetTh

2017-05-22 22:45:32 482

原创 Java学习笔记(十六)--线程

线程中的一些方法1.线程加入: public final void join() join()方法的作用:等待该线程中止,其他线程才能继续抢着执行。2.线程礼让: public static void yield() yield()方法的作用:暂停当前正在执行的线程对象,并执行其他线程。 理论上会让线程之间的执行更加和谐,但是实际上做不到。3.线程死亡:public final void

2017-05-22 22:03:35 249

原创 Java实现--游戏次数案例(IO流文件存储游戏次数)

案例: 有一个猜数字小游戏,需要限制玩家的游戏次数,当超过5次时,提示玩家:免费游戏次数已用完,请付费。案例分析: 可以用文件来存储游戏次数,玩家每玩一次游戏,游戏次数加1,同时更新文件中存储的数据,当文件中的数据大于5的时候,就可以给出提示:免费游戏次数已用完,请付费。实现步骤: 1.创建一个文件,存储游戏次数 2.创建一个Propeties集合 3.把文件中的元素添加到集合中 4.把

2017-05-18 01:09:46 2740

原创 Java实现--登录和注册案例(IO流实现)

案例分析: 我们之前做过的登录注册案例是把用户信息存进集合里,要用IO流实现的话,就是要把用户信息存入文件中。登录注册两个功能的具体实现是在用户操作类中,所以我们只需要在用户操作类中把之前用户信息存进集合改为存进文件就可以了。用到的类的详细分解: (1)用户类(User):用户名,密码,邮箱,电话号码等等各种注册时会用到的东西。我们在实现这个登录和注册案例的时候只需要用户名和密码就够了。这是一个

2017-05-18 00:24:32 9405 3

原创 Java学习笔记(十五)--线程

多线程1.线程是依赖于进程而存在: (1)进程:正在运行的应用程序 (2)线程:进程的执行路径,执行单元2.多线程的两种方案: (1)继承Thread类;package com.edu_01;public class MyThread extends Thread{ //1.继承Thread类 //2.重写run方法,重写run方法中的代码之后,当我们启动了这个线程之后,我们的

2017-05-17 23:54:21 210

原创 IO流的总结

字节流 (任意文件都可以复制)1.InputStream:字节输入流(抽象类) (1)FileInputStream:InputStream的子类,可以直接关联文件 (2)BufferedInputStream:高效字节输入流,不能关联文件,只能关联流,俗称操作流的流,高级流2.OutputStream:字节输出流(抽象类) (1)FileOutputStream:OutputStream的子

2017-05-17 22:14:14 232

原创 Java学习笔记(十四)--IO流

LineNumberReader方法: public int getLineNumber():获取行号 public void setLineNumber(int lineNumber):设置起始行号(默认其实行号从0开始) String readLine():读取一行需求:读取文件,每次读取一行打印并且加上行号。package com.edu_01;import java.io.FileNo

2017-05-17 21:45:25 286

原创 Java实现--模拟斗地主的洗牌和发牌

案例分析: 我们需要模拟斗地主过程中的洗牌、发牌和看牌。而且要求牌是排好序的。1.每张扑克牌都有花色和点数,所以我们可以先把花色和点数存进两个字符串数组,然后再存进集合里,而因为我们后面涉及到对牌进行洗牌还有排序等等,所以我们选择TreeMap集合来存储,键是扑克牌的编号,值是扑克牌的花色和点数(把花色和点数拼接成一个字符串)。2.洗牌洗的是编号,我们再用ArrayList集合来存储牌的编号,调用

2017-05-09 18:28:11 3400

原创 Java中的异常处理

异常 ##1.异常:程序出现的不正常情况。2.错误:一般指硬件问题。这是非常严重的,我们一般处理不了。3.异常分类: 非RuntimeException:即编译时期异常,程序运行之前。 RuntimeException:运行时期异常,程序运行起来以后。 4.针对异常,JVM默认的处理方案: 一旦遇到程序出现了问题,就会把问题的类名,错误原因,错误的位置等信息打印在控制台,以便我们观察。并

2017-05-09 00:09:25 290

原创 Java学习笔记(十二、十三)--IO流

File1.File:文件和目录(文件夹)路径名的抽象表示形式。 2.File的构造方法:File(String pathname)//把一个路径名封装成一个File对象File(String parent,String child)//把一个父路径和一个子路径封装成一个File对象File(File parent,String child)//把一个父路径File对象和一个子路径封装成一个F

2017-05-08 23:04:15 396

原创 Java实现--登录和注册案例(把用户信息存进集合)

登录和注册案例的分析: 我们在完成一个需求时,需要面向对象,我们必须找到能完成某个功能的类,接着调用里面的方法来完成它。而这些类我们要进行分包,在不同包下实现,Java中的分包: com.edu.domain — 标准的Java描述类 com.edu.dao — 存放的是接口 com.edu.daoimpl — 存放的是接口的实现类 com.edu.util — 对对象进行操作的工具类

2017-05-04 23:23:56 22504 1

原创 Java学习笔记(十一)--Set集合 Map集合

HashSet1.元素顺序:元素唯一,但是无序(它不保证Set的迭代顺序,特别是它不保证该顺序永久不变)。2.如何保证元素的唯一性:重写hashCode()和equals()两个方法。 执行流程: 首先判断哈希值是否相同: (1)如果不同,就直接添加到集合; (2)如果相同,继续执行equals(),看其返回值: -如果是false,就直接添加到集合; -如果是true,说明元素重复不添

2017-05-01 23:06:15 304

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除