上一节主要介绍了String类的一些构造方法,主要分为四类 无参构造器:String(),创建一个空字符串"",区别于null字符串,""已经初始化,null并未初始化 副本构造器:String(String s),简单的赋值,得到的是一个副本,俩个引用指向的是常量池中的同一个String,但是St ...
分类:
编程语言 时间:
2018-07-23 12:31:54
阅读次数:
200
1,Comparable 简介 Comparable 是排序接口。 若一个类实现了Comparable接口,就意味着“该类支持排序”。 即然实现Comparable接口的类支持排序,假设现在存在“实现Comparable接口的类的对象的List列表(或数组)”,则该List列表(或数组)可以通过 C ...
分类:
编程语言 时间:
2018-07-19 17:21:38
阅读次数:
148
在没有.java源码的情况下,如果想修改一个.class文件。可以通过以下步骤实现: 修改前的class文件: 一、反编译.class文件成.java文件。 1、可以使用Java Decompiler这个工具,直接打开对应的.class文件。然后点击菜单:File→Save Source,将文件保存 ...
分类:
其他好文 时间:
2018-07-19 16:14:09
阅读次数:
152
1,TreeSet介绍 1)TreeSet 是一个有序的集合,它的作用是提供有序的Set集合。2)TreeSet 继承于AbstractSet,所以它是一个Set集合,具有Set的属性和方法。3)TreeSet 实现了NavigableSet接口,意味着它支持一系列的导航方法。比如查找与指定目标最匹 ...
分类:
编程语言 时间:
2018-07-19 13:41:25
阅读次数:
177
1,HashSet介绍 1)HashSet 是一个没有重复元素的集合。2)它是由HashMap实现的,不保证元素的顺序,而且HashSet允许使用 null 元素。3)HashSet是非同步的。如果多个线程同时访问一个哈希 set,而其中至少一个线程修改了该 set,那么它必须 保持外部同步。这通常 ...
分类:
编程语言 时间:
2018-07-19 11:58:52
阅读次数:
162
代码版本 JDK每一版本都在改进。本文讨论的HashMap和HashTable基于JDK 1.7.0_67 1. 时间 HashTable产生于JDK 1.1,而HashMap产生于JDK 1.2。从时间的维度上来看,HashMap要比HashTable出现得晚一些。 2. 作者 以下是HashTa ...
分类:
编程语言 时间:
2018-07-18 14:10:21
阅读次数:
179
Java中的Integer.bitCount(i)的返回值是i的二进制表示中1的个数。源码如下: 源码解析如下: i=031bi ...
分类:
编程语言 时间:
2018-07-12 21:39:34
阅读次数:
150
最近业务需要出一份Java Web应用源码安全审查报告, 对比了市面上数种工具及其分析结果, 基于结果总结了一份规则库. 本文目录结构如下: 检测工具 FindSecurityBugs 基于class文件分析, 他是大名鼎鼎的findbugs的插件, 安装比较简单. 在findbugs官网下载安装包 ...
分类:
编程语言 时间:
2018-07-09 11:16:51
阅读次数:
1008
java.lang.Object Object类是java中所有其他类的基类,其他的所有的类默认继承该基类,该类中的方法由13个,如下 registerNatives()方法 该方法由native进行修饰,表示该方法并不是在java中进行实现,而是由c/c++去完成,我们暂时不需要很关注这个方法 g ...
分类:
编程语言 时间:
2018-07-08 11:51:31
阅读次数:
138
1.原理 2.java源码 3.打印结果 1.原理 两层循环完成排序 外层循环: 外层循环一次会把最大的数移动到list[n] 循环第二次会把第二大的数移动到list[ln-1] 当循环n-1后,排序完成。 内层循环: 两相邻数字进行比较,如果list[j]比list[j-1]大,则交换数字 因为过 ...
分类:
编程语言 时间:
2018-07-05 01:25:29
阅读次数:
201