自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

◇″淡定。

脚踏实地,做更好的自己

  • 博客(200)
  • 资源 (24)
  • 收藏
  • 关注

原创 Java中的流与文件:ZIP文档

Zip文档通常以压缩格式存储了一个或多个文件,每个zip文档都有一个头,包含诸如每个文件名字和所使用的压缩方法等信息。在Java中,可以使用ZipInputStream来读写ZIP文档。可以通过getNextEntry方法就可以返回一个描述这些项的ZipEntry类型的对象。ZipInputStream的read方法被修改为碰到当前项的结尾时返回-1,然后你必须调用closeEntry来读入下一项

2016-03-20 21:27:22 1546

原创 Java中的流与文件:文本的输入与输出

在保存数据时,可以选择二进制格式或文本格式。尽管二进制格式的I/O高速且高效,但是不宜人阅读。       在存储文本字符串时,需要考虑字符编码(character encoding)方式。ISO-8859-1编码在美国和西欧最常用的常用的编码方式。       OutputStreamWriter类将使用选定的字符编码方式,把Unicode字符流转换为字节流。而InputStreamRe

2016-03-19 01:09:34 1347

原创 Java中的流与文件:正则表达式

正则表达式用于指定字符串的模式,你可以在任何需要定位匹配某种特定模式的字符串的情况下使用正则表达式。常用语法:1>字符串是一个括在括号中的可选择的字符集,例如:[Jj]、[^0-9]。这里“-”表示是一个范围(所有unicode值落在两个边界范围之内的字符),而^表示补集(除了指定字符之外的所有字符)。2>如果字符类中包含“-”,那么它必须是第一项或最后一项;如果要包含“[”,

2016-03-11 22:34:27 1293

原创 Java中的流与文件:流

一、流       Java API中,可以从其中读入一个字节序列的对象称为输入流,而可以向其中写入一个字节序列的对象称为输出流。这些字节序列的来源地和目的地可以是文件,而且通常都是文件,但是也可以是网络连接,甚至是内存块。抽象类InputStream和OutputStream构成了输入/输出类层次结构的基础。

2016-03-10 22:29:49 1945

原创 Java中的堆与栈之克隆篇

Java将内存空间分成两块,即栈和堆。在栈中保存基本类型和引用变量,在堆中保存对象。

2016-02-22 14:04:45 1351

原创 数组排序及相关各种算法

对数组中的元素进行排序,常见算法如下:一、选择排序       选择排序的基本思想是,每一趟从待排序的数据元素中选出最小(或最大)的一个元素,顺序放在已排好序的数列的最后,直到全部待排序的数据元素排完。public static void selectSort(int[] array) { int index; /* * 需要选择排序的次数,即需要排序的元素个数 为leng

2016-02-18 17:43:14 572

原创 反转字符串

字符串反转的方法有许多,具体如下:一、使用StringBuilder的reverse()方法new StringBuilder(s).reverse();二、使用字符数组反转public static String reverse(String str) { char[] arrays = str.toCharArray(); for (int i =

2016-02-16 17:39:50 329

原创 Java的多线程之执行器

构建一个新的线程是有一定代价的,因为涉及与操作系统的交互。如果程序中创建了大量的生命期很短的线程,应该使用线程池(thread pool)。一个线程池中包含许多准备运行的空闲线程。将Runnable对象交给线程池,就会有一个线程调用run方法。当run方法退出时,线程不会死亡,而是在池中准备为下一个请求提供服务。       另一个使用线程池的理由是减少并发线程的数目。创建大量线程会大大降低性

2016-02-16 16:28:11 442

原创 Java的多线程之Callable与Future

一、Callable与Future       Runnable封装了一个异步运行的任务,可以把它想象成为一个没有参数和返回值的异步方法。Callable与Runnable类似,但是有返回值。Callable接口是一个参数化的类型,只有一个方法call。public interface Callable { /** * Computes a result, or th

2016-02-16 14:38:36 403

原创 打印九九乘法表

for (int i = 1; i <= 9; i++) { for (int j = 1; j <= i; j++) { System.out.print(i + "*" + j + "=" + (i * j) + " "); } System.out.println();}

2016-02-15 22:36:45 384

原创 打印正反三角图形

代码如下:public static void print(int k) { int column = 2 * k - 1; int row = k; for (int i = 0; i < row; i++) { for (int j = 0; j < column; j++) { if ((j = k - 1 - i)) { System.out.print("*"

2016-02-15 22:20:19 842

原创 判断字符串是否相同

字符串属于对象而非基本数据类型,不能使用”==“来判断两个字符串是否相等,所以需要通过equals()方法来判断两个字符串内容是否相同。       使用”==“判断的是两个字符串对象的内存地址,而非字符串内容。

2016-02-15 21:04:01 1208

原创 判断某一年是否为闰年

计算闰年的关键是公式。满足两种条件的整数可以称为闰年,第一,能被4整除但不能被100整除;第二,能被400整除。公式如下:   year%4 == 0 && year%100 != 0 || year%400 == 0import java.util.Scanner;public class VariableExchange { public static void main(St

2016-02-15 20:56:20 1018

原创 实现两个变量的互换(不借助第三个变量)

变量的互换常见于数组排序算法中,当判断两个数组元素需要互换时,将创建一个临时变量来共同完成互换,临时变量的创建增加了系统资源的消耗,如果需要互换的是两个整型类型的变量,那么可以使用更高效的方法。       使用异或运算符“^”实现两个变量的互换。代码如下:package com.trouble.test;import java.util.Scanner;public class

2016-02-15 20:38:55 1749

原创 从控制台接收输入字符

使用System类的输入流也就是类变量in,它可以接收用户的输入信息,并且是标准的输入流实例对象。另外,Scanner类是Java的扫描器类,它可以从输入流中读取指定类型的数据或字符串。代码如下:import java.util.Scanner;public class InputCode { public static void main(String[] args) { S

2016-02-15 19:23:05 1790

原创 Java的多线程之线程安全的集合

一、线程安全的集合      如果多线程要并发地修改一个数据结构,例如散列表,那么很容易会破坏这个数据结构。例如,一个线程可能要向表中插入一个新元素。加入在调整散列表各个桶之间的链接关系的过程中,被剥夺了控制权。如果另一个线程也开始遍历同一个链表,可能使无效的链接并造成混乱,会抛出异常或陷入死循环。       可以通过提供锁来保护共享数据结构,但是选择线程安全的实现作为替代可能更容易

2016-02-15 18:18:34 10322

原创 Java的多线程之阻塞队列

一、阻塞队列       之前已经初步了解了Java并发程序设计基础的底层构建块。然而,对于实际编程来说,应该尽可能远离底层结构。使用并发处理的专业人士实现的较高层次的结构要方便的多、安全的多。       对于许多线程问题,可以通过使用一个或多个队列以优雅且安全的方式将其形式化。生产者队列向队列插入元素,消费者队列取出它们。使用队列,可以安全地从一个线程向另一个线程传递数据。

2016-02-15 16:29:49 451

原创 Java的多线程之同步篇三:同步阻塞、监视器、volatile、final、原子性、线程局部变量、锁测试与超时、读写锁

一、同步阻塞每一个Java对象有一个锁。线程可以通过调用同步方法获得锁。还有另一个机制可以获得锁,通过进入同步阻塞。当线程进入如下形式的阻塞,将获得obj的锁。synchronized (obj) { critical section }有时会发现“特殊的”锁,如:private Object lock = new Object(); public void tran

2016-02-12 19:54:01 813

原创 Java的多线程之同步篇二:synchronized关键字

一、synchronized关键字       Lock和Condition接口为程序设计人员提供了高度的锁定控制。然而,大多数情况下,并不需要那样的控制,并且可以使用一种嵌入到Java语言内部的机制。从1.0版开始,Java中的每一个对象都有一个内部锁。如果一个方法用synchronized关键字声明,那么对象的锁将保护整个方法。也就是说,要调用该方法,线程必须获得内部的对象锁。换句

2016-02-11 19:34:32 488

原创 Java的多线程之同步篇一:锁对象、条件对象

一、多线程的同步根据各线程访问数据的次序,可能会产生讹误的对象。这样一种情况通常称为竞争条件。1>同步存取(以银行转账为例:)模拟一个有若干个账户的银行,随机地生成在这些账户之间转换钱款的交易。每个账户有一个线程。每笔交易中,会从线程所服务的账户中随机转移一定数目的钱款到另一个随机账户。提示:银行内部的转账交易,银行的总金额应保持不变。代码如下:package com.

2016-02-11 16:43:27 2407

原创 Java的多线程之基础篇

一、线程1>创建新线程使用Thread t = new Thread(Runnable target);将创建一个线程。注:不要调用Thread类或Runnable对象的run方法。直接调用run方法,只会执行同一个线程中的任务,而不会启动新线程。应该调用Thread.start方法,这个方法将创建一个执行run方法的新线程。2>中断线程a>当线程的ru

2016-02-11 13:23:12 374

原创 Java的集合之算法篇与遗留的集合

四、算法1>排序与混排Collections类中的sort方法可以对实现了List接口的集合进行排序。a>如果想按照降序对列表进行排序,可以使用一种非常方便的静态方法Collections.reverseOrder()。这个方法将返回一个比较器,比较器返回b.compareTo(a)。例如:Collections.sort(staff,Collections.rev

2016-02-06 15:36:39 1297

原创 Java的集合之基础篇

一、集合接口1>将集合的接口与实现分离队列的实现:在队列尾部添加元素,在头部删除元素,并且可以查找队列中元素的个数,采用“先进先出”规则。自定义队列实现:接口如下:package com.collection;/** * 队列接口 * @author Dyce * @date 2016年1月15日 上午10:40:52 * @vers

2016-02-05 15:26:36 420

原创 【Maven权威指南】Maven实战篇:一个简单的web应用

一、创建简单web项目( 1 )在Dos界面运行命令:mvn archetype:generate -DgroupId={project-packaging} -DartifactId={project-name} -DarchetypeArtifactId=maven-archetype-webapp -DinteractiveMode=false注:packaging元素包含的值是

2016-01-19 14:28:59 751

原创 【Maven权威指南】Maven实战篇:定制一个Maven项目

一、创建Maven项目mvn archetype:generate -DgroupId=com.yiibai -DartifactId=NumberGenerator -DarchetypeArtifactId=maven -archetype-quickstart -DinteractiveMode=false -Dversion=1.0二、定制项目信息在编写代码之前,

2016-01-19 01:32:51 581

原创 【Maven权威指南】Maven实战篇:一个简单的Maven项目

一、用Maven Archetype插件创建简单项目。1>在终端(* UNIX或Mac)或命令提示符(Windows)中,浏览到要创建 Java 项目的文件夹。键入以下命令:mvn archetype:generate -DgroupId={project-packaging} -DartifactId={project-name}-DarchetypeArtifactId=maven

2016-01-18 22:26:30 828

原创 【Maven权威指南】Apache Maven简介、安装和运行

一、Maven1>Apache Maven是一个项目管理工具,它包含了一个项目对象模型,一组标准集合,一个项目生命周期,一个依赖管理系统,和用来运行定义在生命周期阶段中的插件目标的逻辑。2>约定优于配置系统、类库、框架应该假定合理的默认值,而非要求提供不必要的配置。3>基于Maven插件的全局性重用4>一个“项目”的概念模型二、Maven的安装和运行

2016-01-18 12:46:53 439

原创 Java的泛型程序设计

泛型是常见的程序设计手段,使用泛型机制编写的程序代码要比杂乱地使用Object变量,然后再进行强制类型转换的代码更具的安全性和可读性。一、泛型程序设计泛型程序设计意味着编写的代码可以被很多不同类型的对象所重用。1>在Java中增加泛型类之前,泛型程序设计是用继承实现的。ArrayList类只维护一个Object引用的数组。2>泛型通过类型参数来指示元素的类型。这比使用Obj

2016-01-15 10:25:14 391

原创 Java的异常、断言、日志和调试

由于目前对于Java图形程序设计的暂时没有了解的计划,所以直接学习当前章节。一、处理错误( 1 )异常分类在Java程序设计语言中,异常对象都是派生于Throwable类的一个实例,如果Java内置的异常类不能满足需求,用户可以创建自己的异常类。如上图:所有的异常都继承自Throwable,但在下一层分解为两部分:Error和Exception。

2016-01-03 04:42:28 537

原创 Java的接口与内部类

接口:主要用于描述类具有什么功能,而不是给出每个功能的具体实现。一个类可以实现一个或多个接口,并在需要接口的地方,随时使用实现了相应的接口的对象。克隆对象(深拷贝):指创建一个新对象,且新对象的状态与原始对象的状态相同当对克隆的新对象进行修改时,不会影响原始对象的状态。内部类机制:内部类定义在另一个类的内部,其中的方法可以访问包含它们的外部类

2015-12-30 23:22:13 1503

原创 笔记:数组和集合的常用排序

一、数组排序import com.ObjectAnalyzer;public class Employee implements Comparable{ private String name; private double salary; public Employee(String n, double s) { name = n; salary = s; } pu

2015-12-29 12:24:31 349

原创 【从头开始学Java】Java的继承(枚举、反射)

五、参数数量可变的方法在Java中使用省略号...的形式来创建参数数量可变的方法。public static double max( double... values);调用方式:1> max(3.1, 40.4,-5);2>也运行将一个数组传递给可变参数方法的最后一个参数。注:因此,可以将已经存在且最后一个参数是数组的方法重新定义为可变参数的方法,而不会破

2015-12-28 13:15:24 1486

原创 Java的继承(继承、多态、动态绑定、静态绑定、泛型数组、对象包装器的自动装箱与自动拆箱)

继承:基于已存在的类构造一个新类,复用这些类的方法和域,还可以添加一些新的方法和域,以满足新的需求。反射:在程序运行期间发现更多的类及其属性的能力。主要是开发软件工具的人员,而不是编写应用程序的人员使用。注:Java继承都为公有继承,而没有C++中的私有继承和保护继承。

2015-12-27 20:25:48 1011

原创 Java的对象与类

面向对象程序设计(OOP):不必关心对象的具体实现,只要能满足用户的需求即可。一、类概念:构造对象的模板或蓝图,而类构造对象的过程称为创建类的实例。封装:将数据和行为组合在一个包中,并对对象的使用者隐藏了数据的实现方式。继承:扩展一个已有的类,这个扩展后的新类具有所扩展的类的全部属性和方法。在新类中,只需提供适用于新类的新方法和数据域就可以了。这种通过扩展一个类来创建新类的过程称为

2015-12-24 16:37:08 340

原创 Java的日历程序

本文为学习Java核心思想的笔记,特此说明。package com;import java.text.DateFormatSymbols;import java.util.Calendar;import java.util.GregorianCalendar;public class MyCalendar { public static void main(String[] a

2015-12-21 22:11:13 935

原创 Java的数据类型

一、Java是一种强类型语言,必须为每一个变量声明一种类型。在Java中一共有8中基本类型,其中有4种整型,2种浮点型,1种用于表示Unicode编码的字符单元的字符类型char和1种用于表示真值的boolean类型。(1)、整型int  4字节 、short 2字节 、 long 8字节 、byte 1字节Java中整型的范围与运行Java代码的机器无关。注:  1、长整型数

2015-12-20 23:34:30 385

原创 关于大学的自我反省

转眼间2015年过去一半了,回首自己一年,感觉颓废不堪,而且深深的感觉到自己的java基础不好,所以经过一番思考,决定在接下来的日子里发愤图强,努力上进,故开设这个新的文章类别,同时也是我开始重新谢谢java的书名-------------java核心技术。目标在接下来的日子里仔细研究java的基础知识,为自己的明天而努力。加油,加油!!!!!2015-12-20

2015-12-20 21:53:59 557

原创 反转排序

面试基础问题:反转排序反转排序是对数组两边的元素进行替换,所以只需要循环数组长度的半数次。package com;import java.util.Arrays;import org.junit.Test;public class MyTest { public static void main(String[] args) { int[] array = { 63,

2015-11-30 17:03:55 1890

原创 直接选择排序

面试基础问题:直接选择排序每一趟从待排序的数据元素中选出最小(或最大)的一个元素,顺序地放在已排好序的数列的最后,直到全部待排序的数据元素排完。例如:初始数组资源: [63  4  24  1    3     15 ]第一趟排序后: [15  4  24  1    3   ]  63第二趟排序后: [15  4  3     1]   24   63package co

2015-11-30 16:53:40 338

原创 冒泡排序

面试中基础问题:冒泡排序java实现中使用双层循环实现,其中外层循环用于控制排序轮数,一般为要排序的数字长度减一次,因为最后一次循环只剩下一个数组元素,不需要对比,同时数组已经完成排序了。而内层循环主要用于对比数组中每个临近元素的大小,以确定是否交换位置,对比和交换次数随排序轮数而减少。package com;public class MyTest { public static

2015-11-30 16:25:53 235

临时资源-版本资源管理工具

临时资源临时资源临时资源临时资源临时资源临时资源临时资源临时资源临时资源临时资源临时资源临时资源临时资源临时资源临时资源临时资源临时资源临时资源临时资源临时资源临时资源

2018-11-13

实战Java高并发程序设计 带完整目录 附源码

实战Java高并发程序设计 带完整目录 附源码---------------------------------------

2018-01-18

Java多线程编程核心技术_含书签目录_完整版

Java并发书籍,有需要可以学习----------------------------------------------------

2018-01-16

KendoUI入门手册

KendoUi的入门手册,解释它的基础知识,如需更详细文档请下载官方api

2017-08-15

韩顺平oracle视屏教程笔记

韩顺平oracle视屏教程的比较pdf文件,需要的可以下载

2015-07-21

SQL入门经典

sql入门的不错书籍,常用的知识都有,带目录书签的哦。

2015-06-26

解析sql文件并且生成Javabean的工具类

本人编译原理的作业,完成基本全部使用正则表达式,使用意义不大,需要的人可以下载。

2015-06-23

Velocity学习资源

Velocity的入门学习资源, 主要包括下面文档: 《Velocity模板使用指南中文版》 《velocity Java开发指南中文版》 《Velocity Web应用开发指南中文版》

2015-05-18

SSH2模板2015-2

SSH2的模板,有需要的朋友可以下载。 2015-5-18

2015-05-18

jfinal的项目

一个Jfinal的开发项目实例,初步应用。有兴趣的朋友可以深入学习一下。

2015-05-18

在线预览的实例

在线预览的实例类,将代码导入eclipse就可运行,不过还要安装相应的软件,具体的内容可以在本人的博客中寻找

2015-05-18

Linux工具SSH

linux和window连接的工具,一个你必须了解的工具

2015-05-17

关于Linux下javaweb开发软件

主要包括在linux下进行java的web开发所需要的软件, 包括tomcat、jdk、mysql等, 本人会不断更新,希望对大家有帮助, 内容是一个分享链接哦!

2015-05-17

iso制作工具

在虚拟机中学习linux时候,经常需要通过挂载和卸载iso文件来传送文件、安装包等,这个iso制作工具比较简单,直接解压即可使用,分享给大家。

2015-05-16

java面试题

从网上下载的面试基础题,帮助大家学习被遗忘的知识点

2015-05-06

java7并发编程实战手册----源代码

学习java并发的不错的书籍,适合初学者使用

2015-04-20

自己实现的数据库连接池-----转载他人的

下载他人的自己实现的数据库连接池,对于初学者去了解连接池的理解非常有好处,代码比较清晰,注释明确

2015-04-14

JDK1.6中文版

jdk的1.6中文版,学习的好工具,需要的可以下载

2015-04-10

linux命令大全

linux 的命令大全,有常见的一些命令

2015-04-06

Android获取应用程序大小和缓存的实例代码

可以查看本人的博客对应的文章,来在Android程序中获取程序的应用大小和缓存大小

2015-02-12

springmvc的基本实现模板

压缩包中包含三个项目,springmvc的基于xml文件,注解,以及3.0版本基于注解的实现项目,其中包含了相应的jar包。

2015-02-03

二维码工具包

二维码工具类导入的jar包,相应的工具类可以查找本人的博客中

2015-02-03

MD5加密工具类

md5加密类,可以通过md5加密保证密码的安全性

2014-10-09

j2ee的API帮助文档

j2ee的api帮助文档,有需要的朋友可以下载

2014-08-23

空空如也

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

TA关注的人

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