- 博客(250)
- 资源 (3)
- 收藏
- 关注
原创 【JDK源码阅读10-util】Set接口---HashSet
HashSet接口一、类继承关系 public class HashSet extends AbstractSet implements Set, Cloneable, Serializable特点: 1 HashSet实现Set 接口,由哈希表支持,底层是一个 HashMap 实
2016-11-12 15:46:33 555
原创 【JDK源码阅读9-util】Map接口之LinkedHashMap
LinkedHashMap接口一、类继承关系public class LinkedHashMap extends HashMap implements Map二、LinkedHashMap接口特点 与HashMap的异同:同样是基于散列表实现, 区别是LinkedHashMap
2016-11-12 11:23:57 3024
原创 【JDK源码阅读8-util】Map接口----HashMap
HashMap接口HashMap接口要聊的东西太多了,而且由于HashSet接口中底层实现就是用的HashMap,所以建议先看HashMap的源码。这里就直接转载别人的文章中的总结;毕竟别人总结 的非常到位。先说下结构,对HashMap的结构有个大概的了解后,再说些其工作原理以及其中涉及到的哈希算法。参考:【http://blog.csdn.net/qq_27093465/article/
2016-11-10 22:26:00 778
原创 【JDK源码阅读7-util】Map接口
Map接口 Map接口不是Collection的子接口; *Map集合中将键映射到值的对象。一个映射不包含重复的键,即每个键最多映射一个值;*Map接口提供了三种collection视图,允许以键集、值集或者键值映射关系形式查看映射集合的内容。* 映射顺序定义为迭代器在映射的collection视图上返回其元素的顺序.* 像T
2016-11-09 14:57:43 606
原创 【JDK源码阅读6-util】Collection-Set
接口--Setpublic interface Setextends Collection set集合是存储无序,不可重复的元素。 直接上fucking source code,主要是看后面的其实现类HashSet,TreeSet,LinkedSet具体实现: /** * A collection that contains no dup
2016-11-08 19:28:07 464
原创 如何解决Chrome中无法使用印象笔记的情况
经常看到一些优秀的博客,然后就只能添加到浏览器的文件夹中,久而久之越来越多,很是头疼。看到印象笔记后,发现其可以裁剪网页内容的功能很是吸引人,于是便下载了一个安装。由于浏览器使用的Chrome,无法翻墙导致很多不兼容的问题,下面是一个很好的有效地不用翻墙的解决办法:http://jingyan.baidu.com/article/0f5fb099cbe5486d8334ea2c.html
2016-11-08 10:33:03 8610 1
原创 【JDK源码阅读5-util】Collection-List---Vector
Vector实现类 public class Vector extends AbstractList
2016-11-06 21:29:47 477
原创 【JDK源码阅读4-util】Collection-List---LinkedList
(二)LinkedList实现类java.util 类 LinkedListjava.lang.Object java.util.AbstractCollection java.util.AbstractList java.util.AbstractSequentialList java.util.LinkedLi
2016-11-06 21:15:20 784
原创 【JDK源码阅读3-util】ArrayList
一、List-----ArrayList 谈到Collection接口,其下有两个主要的子接口List和ArrayList。本节主要看下List接口的主要实现类:ArrayList;ArrayList是List接口的大小可变的数组的实现,底层是由数组实现存储的。 所以其优点是访问速度快,可以根据指定位置迅速找到想要的元素; 缺点是插入或删除元素比
2016-11-05 19:18:14 773
原创 【JDK源码阅读2-util】Collection-List
List接口是Collection的子接口,除了继承了Collection中的方法外,自身还增添了很多有用的方法。 (一)List接口 List集合中的元素是有序可重复的,因此List可将元素插入到指定位置处,或者查询指定位置处的元素。 源码如下:/** * List接口是有序、可重复的元素; * 可以指定位置添加元素、根据索引查询元素 */ public in
2016-11-03 20:41:11 453
原创 【JDK源码阅读1-util】Collection
见过一句夸张的话,叫做“没有阅读过jdk源码的人不算学过java”。从今天起开始精读源码。而适合精读的源码无非就是java.io,.util和.lang包下的类。面试题中对于集合的考察还是比较多的,所以我就先从集合的源码开始看起。 (一)首先是Collection接口。 Collection是所有collection类的根接口;Collection继承了Iter
2016-11-03 19:16:11 625
原创 SpringMVC中出现”HTTP Status 405 - Request method 'PUT' not supported”
在SpringMVC学习过程中做简单DEMO的时候,练习使用REST风格的CRUD,在执行update操作过程中提交后出现了HTTP Status 405 - Request method 'PUT' not supported的错误。这类错误包括 method(PUT,DELETE,POST)not supported,原因很有可能就是后台中的uri(即handler类中)与前端 的uri不
2016-10-28 14:14:15 19245
原创 SpringMVC的@RequestMapping出现404的问题
初学SpringMVC,在学习@RequestMapping时,放在类处注解后,运行程序发现出现了HTTP Status 404 - /springmvc_1/springmvc/WEB-INF/views/success.jsp问题。这有个很难注意到的细节问题:就是在配置的时候:少了一个"/"SpringMV问题C的@RequestMapping开发问题,
2016-10-23 20:28:30 11959 6
原创 【华为OJ26】字符串排序
题目描述编写一个程序,将输入字符串中的字符按如下规则排序。规则1:英文字母从A到Z排列,不区分大小写。 如,输入:Type 输出:epTy规则2:同一个英文字母的大小写同时存在时,按照输入顺序排列。 如,输入:BabA 输出:aABb规则3:非英文字母的其它字符保持原来的位置。 如,输入:By?e 输出:Be?y
2016-10-07 22:19:49 669
原创 【华为OJ40】输入一行字符,分别统计出包含英文字母、空格、数字和其它字符的个数
输入描述:输入一行字符串,可以有空格输出描述:统计其中英文字符,空格字符,数字字符,其他字符的个数输入例子:1qazxsw23 edcvfr45tgbn hy67uj m,ki89ol.\\/;p0-=\\][输出例子:2631012import java.util.*;public class Main{ pub
2016-10-07 00:00:16 639
原创 【华为OJ23】删除字符串中出现次数最少的字符
题目描述实现删除字符串中出现次数最少的字符,若多个字符出现次数一样,则都删除。输出删除这些单词后的字符串,字符串中其它字符保持原来的顺序。输入描述:字符串只包含小写英文字母, 不考虑非法输入,输入的字符串长度小于等于20个字节。输出描述:删除字符串中出现次数最少的字符后的字符串。输入例子:abcdd输出例子:ddi
2016-10-06 00:48:08 545
原创 【华为OJ22】汽水瓶
题目描述有这样一道智力题:“某商店规定:三个空汽水瓶可以换一瓶汽水。小张手上有十个空汽水瓶,她最多可以换多少瓶汽水喝?”答案是5瓶,方法如下:先用9个空瓶子换3瓶汽水,喝掉3瓶满的,喝完以后4个空瓶子,用3个再换一瓶,喝掉这瓶满的,这时候剩2个空瓶子。然后你让老板先借给你一瓶汽水,喝掉这瓶满的,喝完以后用3个空瓶子换一瓶满的还给老板。如果小张手上有n个空汽水瓶,最多可以换多少瓶汽水喝?
2016-10-06 00:12:32 743
原创 【链表7】删除链表中重复的结点
题目描述在一个排序的链表中,存在重复的结点,请删除该链表中重复的结点,重复的结点不保留,返回链表头指针。 例如,链表1->2->3->3->4->4->5 处理后为 1->2->5/* public class ListNode { int val; ListNode next = null; ListNode(int val) { th
2016-10-05 19:08:53 382
原创 【链表6】链表中环的入口结点
题目描述一个链表中包含环,请找出该链表的环的入口结点。/* public class ListNode { int val; ListNode next = null; ListNode(int val) { this.val = val; }}*/public class Solution { public Li
2016-10-05 13:43:17 353
原创 【链表5】两个链表的第一个公共结点
题目描述输入两个链表,找出它们的第一个公共结点。如:链表1:1>>>2>>>3>>6>>>7 链表2: 4>>>5>>6>>>7最优解:交叉遍历两个链表,寻找公共节点:/*public class ListNode
2016-10-04 21:29:29 340
原创 【链表4】合并两个排序的链表
题目描述输入两个单调递增的链表,输出两个链表合成后的链表,当然我们需要合成后的链表满足单调不减规则。/*public class ListNode { int val; ListNode next = null; ListNode(int val) { this.val = val; }}*/public class Solu
2016-10-04 17:21:18 308
原创 【链表3】反转链表
题目描述输入一个链表,反转链表后,输出链表的所有元素。/*public class ListNode { int val; ListNode next = null; ListNode(int val) { this.val = val; }}*/public class Solution { public ListN
2016-10-01 00:21:54 403
原创 【链表2】链表中倒数第k个结点
链表中倒数第k个结点:题目描述输入一个链表,输出该链表中倒数第k个结点。有很多种方法,要么用集合,要么用双指针的方法。方法一:集合(这里的每次移除的数要特别注意)/*public class ListNode { int val; ListNode next = null; ListNode(int val) {
2016-09-30 19:40:48 442
原创 【链表1】从尾到头打印链表
题目描述输入一个链表,从尾到头打印链表每个节点的值。 输入描述:输入为链表的表头输出描述:输出为需要打印的“新链表”的表头这题有很多方法,可以先遍历链表获取长度后,再建个同样长度的数组,这时再遍历链表同时获取链表的值,将值加入到数组当中。最后倒着遍历数组,将数组的值放入集合中。这样集合中获取到的数即为链表倒序的值。但是此题我用到一个集合List的特性:list.ad
2016-09-30 17:13:46 434
原创 【Mybatis学习总结九】Spring中集成Mybatis
学习了Mybatis的基本内容后,现在最重要的内容莫过于是在Spring中集成Mybatis了。好处之一就是不用再单独配置Mybatis-config.xml文件了(含有数据库连接池和配置类名以及注册映射文件等信息)。下面看具体操作步骤:1 填加jar包:【mybatis 】mybatis-3.2.0.jarmybatis-spring-1.1.1.jarlog4j-1.2.1
2016-09-29 18:01:07 460
原创 【Mybatis】java.lang.IllegalArgumentException: Mapped Statements collection does not contain value for
【java.lang.IllegalArgumentException: Mapped Statements collection does not contain value for com.myba】错误一般是有以下四个原因造成:1、mapper.xml中没有加入namespace 2、mapper.xml中的方法和接口mapper的方法不对应 3、mapper.xml没有加入到m
2016-09-29 17:00:33 1347
原创 【Mybatis学习总结八】Mybatis缓存
这节内容了解下即可。如多数持久层框架一样,Mybatis同样提供了一级缓存和二级缓存。(*)一级缓存:(1)一级缓存也就是Session级的缓存,默认是开启的,查询操作是使用缓存的;(2)必须是同一个session,session.close()后就不能使用了;(3)查询条件不一致时不会使用缓存;(4)清理缓存完了后session.clearCache(),不会使用;(
2016-09-28 16:26:31 436
原创 Mybatis学习中遇到的错误java.sql.SQLException: Illegal mix of collations (latin1_swedish_ci,IMPLICIT) and (ut
在Mybatis学习存储过程调用的时候,老是出现【java.sql.SQLException: Illegal mix of collations (latin1_swedish_ci,IMPLICIT) and (utf8_general_ci,COERCIBLE) for operation '='】这个错,百度了下意思是返回的结果有两种字符集。一般这种情况在排除编程语言中单独设置的字符集错误
2016-09-27 22:10:30 7608
原创 【Mybatis学习总结七】调用存储过程
今天这节课本来可以一小时结束的,我却从三点半搞到了九点。我觉得我是世界上最S13的人!!!没有之一!!!!一个小错害我花了一个晚上的时间去寻找,真是够无语的。好了,言归正传,还是先总结下今天学习的内容吧。七、Mybatis调用存储过程1 需求: 创建数据表和存储过程,查询得到男性或女性的数量, 如果传入的是0就女性否则是男性2(1) 建表:create table p_use
2016-09-27 21:27:42 565
原创 【Mybatis学习总结六】动态SQL与模糊查询
六、动态SQL与模糊查询学数据库的时候有学过模糊查询。如:根据姓名模糊匹配和指定年龄区间 来查询用户信息:SQL语句可以这样来写:SELECT * FROM d_user WHERE name like '%m%' AND age between 12 AND 18现在在Mbatis中进行实现:1 准备表和数据: create table d_user(id int prim
2016-09-27 15:24:32 703
原创 【Mybatis学习总结五】实现关联表查询----一对多关联(collection)
实现关联表查询----一对多关联(collection)一对多需求:即一张表class中又含有多张表(teacher,student)内容。现根据class_id 来获取对应的班级信息(包括学生和老师信息)。1 、创建表和数据:CREATE TABLE student(s_id INT PRIMARY KEY AUTO_INCREMENT,s_name VARCHAR(20),
2016-09-26 16:32:35 4511
原创 【Core Java Volume 6】集合算法--二分查找法
在数组中查找一个对象,当数组是有序的时候可以采用二分查找法。即可以直接查看位于数组中间的元素,看一看是否大于查找的元素。如果大于,用同样的方法在数组的前半部分继续查找;否则用同样的方法在数组的后半部分继续查找。这样就可以将查找范围缩减一半。Collections类的binarySeacrch方法实现了这个算法。【注】集合必须是排好序的,没有排好序的要提供一个比较器对象。public
2016-09-26 11:13:21 463
原创 【Core Java Volume 5】集合算法---查找数组、集合最大值的通用方法
一、查找数组的最大值1 笔试的时候通常查找数组的最大值,数组类型通常是int类型,可以这样直接写出getMax()代码: //数组(int 类型) public static int getMax(int[] nums){ if(nums.length <=0) return 0; int max= nums[0]; for(int i=0;i<nums.
2016-09-26 10:12:14 613
原创 【Mybatis学习总结四】实现关联表查询----一对一关联(association)
一、一对一关联建立的数据表class(班级)含有班级信息和teacher(教师)信息,而教师信息在零一张表Teacher中;即class表与Teacher相互关联的;现在需要根据class表的id查询class信息和Teacher信息,这就涉及到一对一关联查询。有两种方式:方式一:嵌套结果使用嵌套结果映射来处理重复的联合结果的子集来封装联表查询的数据(去除重复的数据)s
2016-09-25 19:04:23 3045
原创 【Mybatis学习总结三】Mybatis种解决字段名与实体类属性名不相同的冲突
Mybatis种解决字段名与实体类属性名不相同的冲突 在开发中,先创建一个数据表,数据表中包含字段名如(order_id,order_no)..而在创建实体类的时候,对象的属性名可能为(id,no)...这样在Mybatis测试代码中要想根据某个id获取信息时:select * from orders where order_id=#{id}...会因为数据库中字段名和
2016-09-25 16:34:29 1384
原创 【Core Java Volume 4】java中数组Array和集合之间的相互转换
1 数组>>>>>>>集合:Arrays,asList()包装器 //数组》》》集合 String[] arrs={"A","B","C","D"}; List list=Arrays.asList(arrs); for(String l:list){ System.out.print(l+" "); }2 集合>>>>>>>数组
2016-09-25 11:02:39 546
原创 【Mybatis学习总结二】Mybatis操作数据表的CRUD实现
本节内容学习了如何通过Mybatis实现对数据库的增删改查操作。一共有两种实现方式,一是基于XML的实现;第二种是基于注解的实现。下面来具体介绍两种方法的具体实现:一、基于XML的实现 1 还是基于第一节中建立的User.java实体类; 2 新建一个工具类MybatisUtils.java(因为在后面的测试类中要得到sqlsessionFactory,代码都是一样的,
2016-09-24 17:27:24 802
原创 【华为OJ18】识别有效的IP地址和掩码并进行分类统计
题目描述请解析IP地址和对应的掩码,进行分类识别。要求按照A/B/C/D/E类地址归类,不合法的地址和掩码单独归类。所有的IP地址划分为 A,B,C,D,E五类A类地址1.0.0.0~126.255.255.255;B类地址128.0.0.0~191.255.255.255;C类地址192.0.0.0~223.255.255.255;D类地址22
2016-09-23 23:52:26 652
原创 【Mybatis学习总结一】Mybatis的helloworld
近日跟随某网站某PDF开始学习MyBatis框架。一 MyBatis介绍MyBatis 是支持 普通 SQL 查询 , 存储过程 和 高级映射 的优秀持久层框架。MyBatis 消除了几乎所有的 JDBC 代码和参数的手工设置以及对结果集的检索封装。MyBatis 可以使用简单的 XML 或注解用于配置和原始映射,将接口和 Java 的 POJO(Plain Old Java Obje
2016-09-23 22:06:56 526
原创 将一个整数转化成二进制
BigInteger bi = new BigInteger("10");String temp += bi.toString(2);BigInteger 类的具体用法稍后补充...
2016-09-22 23:39:58 3225
JSONObject source 源码
2017-12-04
dubbo-admin-2.5.4.war jdk1.8
2017-09-14
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人