自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 ArrayList源码分析(三)-内部类

此章为ArrayList源码最后一章,ArrayList中的内部类:/** * An optimized version of AbstractList.Itr * 注意,上一个元素是相对与cursor来说的,cursor指向下一个元素,lastRet其实就是当前元素 */ private class Itr implements Iterator<E&...

2018-05-15 13:46:22 750

原创 ArrayList源码分析(二)--方法

长篇警告,善用 ctrl+f(搜索)/** * Trims the capacity of this <tt>ArrayList</tt> instance to be the * list's current size. An application can use this operation to minimize * the stor...

2018-05-05 17:23:52 190

原创 ArrayList源码分析(一)--扩容

ArrayList即动态数组,能自动扩容,常用于当作某一对象的容器,ArrayList有较快的访问速度,而插入和删除操作则逊于LinkedList。ArrayList不是线程安全的,多线程下可以使用Vector类或者使用Collections.synchronizedList(list) 返回一个线程安全的ArrayList。此文章简单探讨ArrayList在Java8中的实现,其实就是翻译一下注...

2018-04-30 14:22:12 187

原创 Java8-时间API

Java 1.0就有了Date类,从源码上那一堆过时标记的方法就可以看出这个类设计的缺陷了,然后有了Calendar类,虽差强人意,但还是不甚完美,所以Java8引入了java.time,改正了很多以前的问题。我们都知道,Date和Calendar不是线程安全的,Date里的很多方法都太反人类了(现在应该没人用了吧。。),Calendar的很多方法也还能用,但为了保证程序以后的正确使用,还是拥抱J...

2018-04-24 13:12:56 156

原创 Struts2基于注解的验证框架

Struts2对数据的验证方式有好几种,可以简单的分为三类:1.编程 2.xml配置 3.注解一般应该是xml配置用得较多,但对比一下果然还是注解相对简单要使用Struts2验证框架,我们需要在页面使用Struts2的各种标签,首先要引用标签库<%@taglib uri="/struts-tags" prefix="s"%>下面是要验证的输入框:<s:form action="r...

2018-04-22 14:26:55 259

原创 Java7中新增的Files和Paths工具类

为了简化开发,Java提供了很多的工具类,此前的文章也提到了一些其他方面的工具类,这篇文章将学习一下Java7中新增的Files类和Paths类。Paths类:这个类有一个静态方法get()可以接收一个或多个字符串参数,这些参数会被用默认的文件系统路径分隔符合并在一起,解析成功后返回一个Path对象,Path对象也是Java7中新增的类,可以很方便的获取路径。你可以使用绝对路径或者是相对路径,例如...

2018-04-10 18:24:38 3734

原创 Java8-Stream的初步学习

Stream是Java8中新增的接口,你可以利用它处理集合里的数据,虽然对于Stream的性能目前还是有不少的争议,但Stream语法的简便却是不可置疑的。流的获取:集合中可以产生顺序(sequential)Stream和并行(parallel)Stream,区别在于前者是单线程运行而后者是多线程运行,它们的获取方式分别为:List<String> list=Arrays.asList...

2018-03-31 18:15:17 190

原创 Struts2注解配置

学校刚开始教Struts2框架,完全照着我以前学过的路线再走一遍就没什么意思了,所以玩一下用Struts2的注解配置取代xml配置。使用Struts2注解需要导入struts2-convention-plugin-2.x.x.jar包,Maven添加下面这个依赖即可,由于依赖关系将自动导入core包:<dependency> <groupId>org.apache....

2018-03-25 18:08:34 216

原创 Servlet注解配置简单介绍

目前xml配置已经越来越不被人看好,业界主推荐用注解配置,次Java配置,然后再考虑xml配置。而自从Servlet3.0开始,我们在开发Servlet时也可以用注解取代xml配置,使用注解配置可以更直观的看到Servlet的跳转页面或其他功能,这也是为什么从Servlet3.0开始默认不生成xml配置文件的原因。本文主要讲解两个注解配置:1.@WebServlet2.@WebFilter例1:新...

2018-03-19 15:23:09 11545 1

原创 Java中==,equals和Objects.equals(x,y)的使用

首先我们要有==操作符的比较概念:1.对于对象引用类型比较的是对象的存储地址2.对于基本数据类型,比较的是它们的值。我们知道,所有的对象都有一个终极父类--Object类,Object类定义了适合用于任何Java对象的方法,其中就有equals方法,这个方法的实现很简单:return (this == obj);如果两个对象的引用相同,它们毫无疑问指向同一个对象。对很多类来说,默认的equals方...

2018-03-11 11:17:44 11231 2

原创 Java8的Lambda表达式初步学习

Lambda表达式是java8新出的特性,lambda是一块代码,由于java中没有函数类型,我们不得不将实现特定功能的代码块写在匿名内部类中,早就有人调侃匿名内部类类型一行、方法名一行,真正方法内容一行,而有了lambad表达式,我们可以取代部分匿名内部类,减少多余代码,提高代码可读性。常用场合:1.实现Comparator接口,进行排序操作2.实现Runnable接口,进行多线程操作3.实现事...

2018-03-05 23:12:05 272

原创 Maven项目环境搭建

写在前面:本文用的是Eclipse自带的Maven,而不是自己安装的Maven初次使用Maven:这里主要是改变jar包保存路径和配置阿里云的仓库镜像,不想改变可跳过。打开eclipse,在window/preferences/maven/user setting,你会看到maven的仓库是在C:/User/YourComputerName/.m2/repository(我的已经改过了)如果不想把...

2018-03-04 14:02:18 191

空空如也

空空如也

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

TA关注的人

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