- 博客(29)
- 资源 (6)
- 收藏
- 关注
转载 如何读开源代码
如何读开源代码分析一个源代码,一个有效的方法是:1、阅读源代码的说明文档,比如本例中的README, 作者写的非常的详细,仔细读过之后,在阅读程序的时候往往能够从README文件中找到相应的说明,从而简化了源程序的阅读工作。2、如果源代码有文档目录,一般为doc或者docs, 最好也在阅读源程序之前仔细阅读,因为这些文档同样起了很好的说明注释作用。3、从makefile文件入手,分析源代码...
2018-12-13 16:11:19
709
1
转载 Java Map 按key排序和按Value排序
一.理论准备 Map是键值对的集合接口,它的实现类主要包括:HashMap,TreeMap,Hashtable以及LinkedHashMap等。 TreeMap:基于红黑树(Red-Black tree)的 NavigableMap 实现,该映射根据其键的自然顺序进行排序,或者根据创建映射时提供的 Comparator 进行排序,具体取决于使用的构造方法。 HashMap的值是没有
2015-09-11 09:38:30
538
转载 Java:重写equals()和hashCode()
以下内容总结自《Effective Java》。1.何时需要重写equals()当一个类有自己特有的“逻辑相等”概念(不同于对象身份的概念)。2.设计equals()[1]使用instanceof操作符检查“实参是否为正确的类型”。[2]对于类中的每一个“关键域”,检查实参中的域与当前对象中对应的域值。[2.1]对于非float和double类型的原语类型域,使用==比较;
2015-09-10 23:43:22
439
转载 java中十进制转二进制转换函数
十进制转成十六进制: Integer.toHexString(int i) 十进制转成八进制 Integer.toOctalString(int i) 十进制转成二进制 Integer.toBinaryString(int i) 十六进制转成十进制 Integer.valueOf("FFFF",16).toString() 八进制转成十进制 Integer.va
2015-08-30 17:16:55
585
转载 卡特兰数 Catalan数 ( ACM 数论 组合 )
卡塔兰数卡塔兰数是组合数学中一个常出现在各种计数问题中出现的数列。由以比利时的数学家欧仁·查理·卡塔兰 (1814–1894)命名。卡塔兰数的一般项公式为 另类递归式: h(n)=((4*n-2)/(n+1))*h(n-1);前几项为 (OEIS中的数列A000108): 1, 1, 2, 5, 14, 42, 132, 429
2015-08-20 14:47:45
3995
转载 ACM之java 输入输出优化
今天的网络赛居然卡java的Scanner 。。。sad 欺负我是java新手啊 赛后看了大牛的写法,原来是输入输出有优化。。。。。。。要醉了。StreamTokenizer 和 PrintWriter但是 用 Scanner 输入就像 cin 那样比较慢,当数据量一大会超时的, 此时不得不用 StreamTokenizer 和 PrintWriterimport java.io.*;p
2015-08-16 16:20:18
1277
1
转载 TCP/IP传输层,你懂多少?
TCP/IP传输层 转自TCP/IP传输层,你懂多少? 1. 传输层的主要功能是什么? 2. 传输层如何区分不同应用程序的数据流? 3. 传输层有哪些协议? 4. 什么是UDP协议? 5. 为什么有了UDP,还需要TCP? 6. 什么是TCP协议? 7. 怎么理解协议和程序? 8. TCP是否真的有链接? 9. 链接是如何建立的(逻辑上)? 10. 所谓的建立TCP链接开销很大
2015-08-12 16:26:38
860
转载 msl、ttl及rtt的区别—— TCP控制字段标志
一、 msl、ttl及rtt的区别 1、 MSL 是Maximum Segment Lifetime英文的缩写,中文可以译为“报文最大生存时间”,他是任何报文在网络上存在的最长时间,超过这个时间报文将被丢弃。因为tcp报文 (segment)是ip数据报(datagram)的数据部分,具体称谓请参见《数据在网络各层中的称呼》一文;2、ip头中有一个TTL域,TTL是 time to liv
2015-08-12 16:24:59
1120
转载 遍历Map的四种方法
public static void main(String[] args) { Map<String, String> map = new HashMap<String, String>(); map.put("1", "value1"); map.put("2", "value2"); map.put("3", "value3"); //第一种:普遍使用,二次取值 Syst
2015-08-12 16:23:32
239
转载 计算机网络“点到点”与“端到端”
1.点到点点到点是数据链路层的说法,因为数据链路层只负责直接相连的两个结点之间的通信,一个结点的数据链路层接受网络层数据并封装之后,就把数据帧从链路上发送到与其相邻的下一个结点。端到端是传输层的说法,因为无论TCP还是UDP协议,都要负责把上层交付的数据从发送端传输到接收端,不论其中间跨越多少结点。只不过TCP比较可靠而UDP不可靠而已。所以称之为端到端,也就是从发送端到接收端。2.从本质上说,
2015-07-20 11:19:10
14896
转载 java 中String编码和byte 解码 总结
1、InputStreamReader 是字节流通向字符流的桥梁:它使用指定的 charset 读取字节并将其解码为字符 InputStreamReader(InputStream in, String charsetName) 2、OutputStreamWriter 是字符流通向字节流的桥梁:可使用指定的 charset 将要写入流中的字符编码成字节。它使用的字符集可以由名称指定或显式给定,
2015-04-12 16:03:32
403
转载 字典树(Trie Tree)
转自红黑联盟 在图示中,键标注在节点中,值标注在节点之下。每一个完整的英文单词对应一个特定的整数。Trie 可以看作是一个确定有限状态自动机,尽管边上的符号一般是隐含在分支的顺序中的。键不需要被显式地保存在节点中。图示中标注出完整的单词,只是为了演示 trie 的原理。 trie 中的键通常是字符串,但也可以是其它的结构。trie 的算法可以很容易地修改为处理其它结构的有序序列,比如一串数字
2015-04-06 22:22:08
327
转载 java格式化输出 printf 例子
import java.util.Date;/** * 使用printf输出 */ /**关键技术点 * 使用java.io.PrintStream的printf方法实现C风格的输出 * printf 方法的第一个参数为输出的格式,第二个参数是可变长的,表示待输出的数据对象 */ public class Printf { public static v
2015-03-28 16:01:16
502
原创 关于"从头到尾彻底理解KMP(2014年8月22日版)"的个人理解
原文链接:从头到尾彻底理解KMP(2014年8月22日版)1,此文先求解next数组这里先从直观上来理解,即考虑模式串P的“各个子串的前缀后缀的公共元素的最大长度”容易得到,然后通过右移“各个子串的前缀后缀的公共元素的最大长度”数组,然后p0补-1得到next数组。之后通过代码求解next数组的各个元素的值。这里需要弄明白为什么需要递归,为什么可以递归求解?递归通过关键代码k=
2015-03-16 14:40:41
1237
转载 常见OJ评判结果对照表,作为ACMer你懂得!
常见OJ评判结果对照表,作为ACMer你懂得!Waiting:你的程序刚刚提交,正在等待OJ评测你的程序。 Compiling:OJ正在编译你的程序。 Accepted:OK!你的程序是正确的 ^_^。 Wrong Answer:你的程序运行的结果和正确结果不同。状态页面CASE那一览显示的是你的程序在第几个样例上出错的。 Time Limit Exceed
2015-03-15 11:33:04
444
转载 BufferedInputStream和BufferedOutputStream用法 解决乱码
转自点击打开链接BufferedInputStream和BufferedOutputStream是过滤流,需要使用已存在的节点来构造,即必须先有InputStream或OutputStream,相对直接读写,这两个流提供带缓存的读写,提高了系统读写效率性能.BufferedInputStream读取的是字节byte,因为一个汉字占两个字节,而当中英文混合的时候,有的字符占一个字节,有的字符占两
2015-03-11 19:21:43
8009
转载 eclipse下导入jdk源码
转自http://changer0702.iteye.com/blog/517103一直想好好看看jdk的源码,虽然可以直接解压jdk下的src看,但是终究不方便!后来发现可以导入到eclipse中,就在网上找了一些方法,下面就和大家分共享:step1:打开eclipse选择Window->Preferencestep2:选择Java->Installed JREs
2015-03-05 10:47:18
431
转载 Java线程的5种状态及切换(透彻讲解)
Java中的线程的生命周期大体可分为5种状态。①NEW:这种情况指的是,通过New关键字创建了Thread类(或其子类)的对象②RUNNABLE:这种情况指的是Thread类的对象调用了start()方法,这时的线程就等待时间片轮转到自己这,以便获得CPU;第二种情况是线程在处于RUNNING状态时并没有运行完自己的run方法,时间片用完之后回到RUNNABLE状态;还有种情况就是
2015-03-03 14:25:22
19654
6
转载 xshell中文乱码等问题
中文乱码: 产生原因:xshell与Linux所用的编码方式不统一。解决方法: 首先检查系统的language设置的是否是中文。 在终端下输入命令∶ # echo $LANG ,如果为中文,则输出如zh_CN.UTF-8形式。其次,查看系统支持的语言和字符集,可以用命令 # locale -a 。若第一步输出zh_CN.UTF-8,则说明Linux系统的编码
2014-05-09 22:21:13
937
转载 SPAN和DIV Class与ID的区别汇总
SPAN和DIV 的区别 SPAN 和 DIV 的区别在于,DIV(division)是一个块级元素,可以包含段落、标题、表格,乃至诸如章节、摘要和备注等。而SPAN 是行内元素,SPAN 的前后是不会换行的,它没有结构的意义,纯粹是应用样式,当其他行内元素都不合适时,可以使用SPAN。 <span>SPAN标记有一个重要而实用的特性,即它什么事也不会做,</span><s
2014-02-23 01:13:58
942
转载 Struts2中的路径问题总结
Struts2 中路径问题是一个棘手的问题,初学时经常被路径问题搞得很烦,通过网上查找资料和自己实战中遇到的问题今天来对 Struts2 中的路径问题来一个总结,当然可能不会很完整,不过后续会进行补充:1. Struts2 一个要匹配路径的地方就是在处理完请求之后对页面进行分发的时候,也就是 result 元素里面的内容。假设项目名为 Struts2在地址栏中访问 action 时
2014-02-21 22:39:33
429
转载 Struts2保存登陆信息和注销功能例子
无论是开发WEB应用还是信息系统,总要遇到需要登录的问题。即使是开放度很高的网站,也需要有这个功能,除非是一些完全静态的网站,没有一点交互的内容。这个是学习笔记,直奔主题。LoginAction类是已经写好了,要记录用户登录的信息,只需要在return SUCCESS;前面加上以下这段代码就OK了。Map attibutes = ActionContext.getConte
2014-02-20 16:50:13
712
转载 CSS中怎么让DIV居中
CSS 如何使DIV层水平居中今天用CSS碰到个很棘手的问题,DIV本身没有定义自己居中的属性,网上很多的方法都是介绍用上级的text-align: center然后嵌套一层DIV来解决问题.可是事实上这样的方法科学吗?经过网络搜索和亲自实验得出以下结论:正确的也是对页面构造没有影响的设置如下:对需要水平居中的DIV层添加以下属性:m
2014-02-19 23:33:21
377
原创 Java Web开发字符编码小记
Tomcat 服务器默认字符编码是ISO8859-1,所以在取URL时存在中文的话需要转码,假设URL字符串中文部分是username,那么在JSP页面中可以这么处理读取指定文件时也会涉及编码的问题,Myeclipse默认的编码方式是GBK(可以更改),如图所示那么如果文件编码方式为UTF-8,那么读取到的此文件中的中文字符则显示为乱码,此时要做如下方式处理
2014-01-20 22:57:05
526
转载 Java 正确的做字符串编码转换
字符串的内部表示?字符串在java中统一用unicode表示( 即utf-16 LE) , 对于 String s = "你好哦!";如果源码文件是GBK编码, 操作系统(windows)默认的环境编码为GBK,那么编译时, JVM将 按照GBK编码将字节数组解析成字符,然后将字符转换为unicode格式的字节数组,作为内部存储。当打印这个字符串时,JVM 根
2014-01-20 22:07:40
544
原创 Myeclipse根路径错误/mysql驱动加载失败解决方案
问题很恶心,可能只有菜鸟才会遇到这种奇葩问题。。。我的web工程名是中文名,没太注意,做完后测试没有问题。结果第二天打开就出现各种奇怪的问题,比如session中保存的id信息总是保存不了,导致页面跳转出错,fuck!经过了各种尝试后发现还是不行,都快被折磨的崩溃了。。。还好,最后新建了web工程,这次起纯英文工程名字,把所有src包中文件拷贝过去,WEBROOT目录下面jsp
2014-01-14 14:03:13
2648
转载 jsp页面跳转
"window.location.href"、"location.href"是本页面跳转"parent.location.href"是上一层页面跳转"top.location.href"是最外层的页面跳转举例说明:如果A,B,C,D都是jsp,D是C的iframe,C是B的iframe,B是A的iframe,如果D中js这样写"window.location
2013-10-07 15:42:43
654
原创 学习nutch搜索引擎的一些笔记
最近开始学习nutch搜索引擎,好多东西需要理解/整理,现在写下来,方便以后查看。 现在看一下下的每个目录是干什么的:1. crawl_generate:需要抓取的url列表(fetchlist),由组成的sequence文件。2. crawl_fetch:每个抓取页面的状态报告,比如是否抓取是否成功,reponse code是多少,由组成的map文件。3. content
2013-09-03 10:45:02
832
原创 Google Chrome 下载文件名乱码问题的解决方案
在用Google Chrome 下载百度文库的文档时,其文件名老是出现乱码,今天终于找到了其解决的方法,是编码的问题:在谷歌浏览器的设置里:Setting->Show Advanced Settings->Web content->Font size->Customize fonts->Encoding->Unicode(UTF8)即可。总结:在使用程序时老是出现的乱码问题其实很多
2013-02-12 21:58:50
3564
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人