Java
文章平均质量分 61
Wu_uuuu
这个作者很懒,什么都没留下…
展开
-
使用java中replaceAll方法替换字符串中的反斜杠
在使用Java中replaceAll方法将字符串中的反斜杠(“\”)替换成空字符串(“”)时,出现如下的异常:java.util.regex.PatternSyntaxException: Unexpected internal error near index 1分析了一下错误的原因:在regex中”\”表示一个”\”,在java中一个”\”也要用”\”表示。这样,前一个”\”代表regex中的原创 2017-03-02 20:39:12 · 1609 阅读 · 0 评论 -
操作系统页面置换算法之先进先出(FIFO)算法
操作系统页面置换算法之先进先出(FIFO)算法在操作系统页面置换算法中,最简单的页面置换算法为FIFO算法。FIFO页面置换算法为每个页记录着该页调入内存的时间。当必须置换一页时,将选择最旧的页。注意不需要记录调入一页的确切时间。可以创建一个FIFO队列来管理内存中的所有页。队列中的首页将被置换。当需要调入页时,将它加到队列的尾部。下面将以Java语言模拟FIFO算法,其中,帧的数量为5,原创 2016-08-03 16:42:41 · 13773 阅读 · 0 评论 -
操作系统页面置换算法之最优置换(OPT)算法
定义 最优置换算法(OPT)是指,其所选择的被淘汰页面,将是以后永不使用的,或许是在最长(未来)时间内不再被访问的页面。采用最佳置换算法,通常可保证获得最低的缺页率。但由于人们目前还无法预知一个进程在内存的若干个页面中,哪一个页面是未来最长时间内不再被访问的,因而该算法是无法实现的,但可以利用该算法去评价其它算法。算法过程 现举例说明如下。原创 2016-08-03 17:03:43 · 51992 阅读 · 4 评论 -
Java中格式化输出的几种方法
Java中实现格式化输出的几种方式:1、System.out.printf();类似于c语言的printf方法。如: int x = 55; System.out.format(“x = %5x”, x); 输出结果为:x = 372、System.out.format()int x = 55; System.out.printf(“x = %5c”, x); 输出结果为:x原创 2017-03-15 21:28:59 · 4734 阅读 · 0 评论 -
Java中intern()方法的使用
String类中定义了intern()方法,该方法的用途是为每一个字符序列生成一个且仅生成一个String的引用,下面用实例来进行说明: 首先了解Java中String的内存分配。 1、直接赋值方式 String a = "123";String b = "123";System.out.println(a == b);执行结果为true,可知,这种方式定义的String类型,字符串的内原创 2017-03-15 20:57:15 · 3257 阅读 · 0 评论 -
Java String,StringBuilder,StringBuffer的区别
三者的区别:String 字符串常量 StringBuffer 字符串变量(线程安全) StringBuilder 字符串变量(非线程安全)String 是不可变的对象, 因此在每次对 String 类型进行改变的时候其实都等同于生成了一个新的 String 对象,然后将指针指向新的 String 对象,所以经常改变内容的字符串最好不要用 String ,因为每次生成对象都会对系统性能产生影响原创 2017-03-15 20:15:31 · 1207 阅读 · 1 评论 -
Java interrupted()方法和isInterrupt方法的区别
1、interrupted():测试当前线程是否已经中断 isInterrupted():测试线程是否已经中断 2、interrupted方法具有清除状态的功能,测试用例如下:public class Main1 { public static void main(String[] args) { Thread.currentThread().interrupt原创 2017-03-14 20:37:14 · 853 阅读 · 1 评论 -
Java停止线程运行的三种方式
Java终止正在运行的线程的方式有如下三种1 使用退出标志,使线程正常退出,也就是run方法完成后线程终止2 使用stop方法强行终止线程(已过时),但是不推荐使用这个方法3 使用interrupt方法中断线程1 使用退出标志,使线程正常退出,也就是run方法完成后线程终止当run方法正常执行完,线程也就停止了,当有循环时,可设置一个标志变量,为真时运行,否则退出循环,主要代码如下:publ原创 2017-03-14 20:26:50 · 10722 阅读 · 0 评论 -
操作系统页面置换算法之最近最少使用算法(LRU)
LRU是Least Recently Used的缩写,即最近最少使用页面置换算法,是为虚拟页式存储管理服务的,是根据页面调入内存后的使用情况进行决策了。由于无法预测各页面将来的使用情况,只能利用“最近的过去”作为“最近的将来”的近似,因此,LRU算法就是将最近最久未使用的页面予以淘汰。下面以java语言模拟实现LRU算法,其中,引用串中不包含0号页号。代码如下:import java.原创 2016-08-03 17:17:23 · 4476 阅读 · 0 评论 -
使用NLPIR汉语分词系统进行分词
今天尝试了用张华平博士打造的汉语分词系统进行分词测试,遇到了一些问题,最终还是分词成功,首先感谢NLPIR提供的源码及资料,现将使用过程中遇到的问题及解决方法分享出来,仅供参考。NLPIR提供了多种开发接口,包括c,c#,java,python等,可用于windows和linux平台。本次使用的语言为Java,平台为windows10一、下载源码及资料可以去官网下载最新的源码及开发文档原创 2016-08-07 21:01:06 · 9767 阅读 · 5 评论 -
设计模式-静态代理模式
代理模式 代理模式的作用是:为其他对象提供一种代理以控制对这个对象的访问。在某些情况下,一个客户不想或者不能直接引用另一个对象,而代理对象可以在客户端和目标对象之间起到中介的作用。代理模式一般涉及到的角色 抽象角色:声明真实对象和代理对象的共同接口。 代理角色:代理对象角色内部含有对真实对象的引用,从而可以操作真实对象,同时代理对象提供与真实对象相同的接口以便在任何时刻都能够代替真实对象。原创 2017-03-15 09:14:05 · 320 阅读 · 0 评论 -
一个例子理解Java回调机制
Java回调机制用一个简单的例子来理解Java的回调机制小明做数学作业时,要计算的数字很大,因此打算用计算器来帮助计算,然 后根据计算器的运算结果填空。这里把填空操作抽象成方法,写到接口DoCalculate里,然后计算器和小明分别封装成两个类,代码如下:FillBlank 接口/** * 计算接口 */public interface DoCalculate { public vo原创 2017-02-26 22:35:51 · 528 阅读 · 0 评论 -
Java类加载过程
类从被加载到虚拟机内存中开始,直到卸载出内存为止,它的整个生命周期包括了:加载、验证、准备、解析、初始化、使用和卸载这7个阶段。其中,验证、准备和解析这三个部分统称为连接(linking)。 1、加载“加载”(Loading)阶段是“类加载”(Class Loading)过程的第一个阶段,在此阶段,虚拟机需要完成以下三件事情: 1、 通过一个类的全限定名来获取定义此类的二进制字节流。 2原创 2017-03-16 11:58:29 · 349 阅读 · 0 评论