
java基础知识
杋杋杋
这个作者很懒,什么都没留下…
展开
-
HashCode总结
**什么是Hashcode?** 简单的来讲HashCode就像是一个签名,当两个对象的Hashcode一样的时候,两个对象就可能一样,但如果Hashcode不一样,那么肯定不是同一个对象。相当于先确定一个大的范围,再用equals去比较。 一个对象的散列码,什么是散列码呢,简单的说就是通过哈希算法算出来的一大窜数字之类的东西和内存有关.如果对象1和对象2相等,说明他们的散列码相等!反过来就不一转载 2017-10-03 21:45:04 · 250 阅读 · 0 评论 -
学习集合Set
List和Set的区別Collection |--List 有序(存储顺序和取出顺序一致),可重复 |--Set 无序(存储顺序和取出顺序不一致),唯一1) HashSet:它不保证 set 的迭代顺序;特别是它不保证该顺序恒久不变。 注意:虽然Set集合的元素...转载 2019-04-19 01:05:57 · 202 阅读 · 0 评论 -
java抽象类中可以定义静态的抽象方法吗?为什么?
抽象类一定有抽象方法吗?我来说说吧,静态是属于字节码的;一个抽象类可以没有抽象方法,只是为了不让别人来实例化它; 以上两点可以说明,静态方法只要有字节码存在就可以运行,所以抽象类中可以有静态方法。 我再多说一嘴,静态和抽象不能共存与方法上,因为静态属于字节码,不需要对象就可以运行,而抽象方法没有方法体,运行没有意义,所以不能共存。...转载 2019-04-23 06:45:05 · 2399 阅读 · 0 评论 -
FilenameFilter与FileFilter应用——输出指定目录下指定后缀名的文件名称案例(IO练习)
两种方法,一种是得到所有的filename进行判断,符合条件的就输出;另一种是在得到filename的同时通过过滤器FilenameFilter,得到符合条件的file方法一,得到filename再判断/* * 判断E盘目录下是否有后缀名为.py的文件,如果有,就输出此文件名称 * * 分析: * A:封装e判断目录 * B:获取该目录下所有文件或者文件夹的F...原创 2019-04-22 08:22:37 · 893 阅读 · 0 评论 -
IO学习File类
File有三个构造方法(效果都一样)public File(Stringpathname) 根据一个路径得到File对象// File(String pathname):根据一个路径得到File对象// 把e:\\demo\\a.txt封装成一个File对象 File f = new File("e:\\demo\\a.txt");public File(S...原创 2019-04-22 07:41:07 · 144 阅读 · 0 评论 -
初探Collection接口中contains()方法的底层
每个实现了Collection的类都会重写contains()方法接着我们去看contains()在ArrayList类中如何实现public boolean contains(Object o) { return indexOf(o) >= 0; } public int indexOf(Object o) { if (o == n...原创 2019-04-17 00:51:57 · 1923 阅读 · 0 评论 -
探究Iterator为何设计成接口,以及具体实现
假设迭代器定义的是一个类,这样我们就可以创建该类的对象,调用该类的方法来实现集合的遍历。但是,Java提供了很多的集合类,这些集合类的数据结构是不同的。所以,存储的方式和遍历的方式应该是不同的。进而它们的遍历方式也应该不是一样的。最终,就没有定义迭代器类。而无论哪种集合,都应该具备获取元素的操作,而且,最好在辅助于判断功能,这样,在获取前,先判断,更不容易出错。也就是说,判断功能和获取功能应该...原创 2019-04-16 23:38:09 · 473 阅读 · 0 评论 -
String和StringBuffer的substring()方法的比較
由于String类型不可修改,所以String类的substring()方法返回的是新串这点不意外但是StringBuffer的截取功能返回值类型也不再是StringBuffer本身了,而是一个String类型对象,这点在初学的时候很意外。再去看看StringBuffer中的substring()方法的实现,是通过下列方法new()出一个String对象作为返回值@Overri...原创 2019-04-16 21:40:56 · 3134 阅读 · 0 评论 -
探索String的集中赋值方式,以及一些关于String的练习
String s1 = new String("hello");String s2 = "hello";System.out.println(s1 == s2);// falseSystem.out.println(s1.equals(s2));// trueString s3 = String.valueOf("hello");System.out.println(s3);Syst...原创 2019-04-16 20:44:21 · 168 阅读 · 0 评论 -
(转)Java中的String、StringBuilder以及StringBuffer
相信String这个类是Java中使用得最频繁的类之一,并且又是各大公司面试喜欢问到的地方,今天就来和大家一起学习一下String、StringBuilder和StringBuffer这几个类,分析它们的异同点以及了解各个类适用的场景。下面是本文的目录大纲: 一.你了解String类吗? 二.深入理解String、StringBuffer、StringBuilder 三.不同场景...转载 2019-04-16 20:35:26 · 238 阅读 · 0 评论 -
equals和hashCode
**public boolean equals(Object obj)**一、equals的用处和规则Object类中默认的实现方式是 : return this == obj 。那就是说,只有this 和 obj引用同一个对象,才会返回true。而我们往往需要用equals来判断 2个对象是否等价,而非验证他们的唯一性。这样我们在实现自己的类时,就要重写equals.按照约定,equals转载 2017-10-03 21:39:23 · 186 阅读 · 0 评论 -
关于Integer类的学习
(由于学习篇幅过长,而且已经有一篇我觉得很不错的文章,所以就不自己手动记录学习过程了。下面开始转载,如有侵权请联系我删除,谢谢。转载自:http://www.cnblogs.com/demingblog/p/5626824.html)一道Integer面试题引发的对Integer的探究面试题://在jdk1.5的环境下,有如下4条语句:Integer i01 = 59;int i02 = 59;转载 2017-10-14 19:27:18 · 315 阅读 · 0 评论 -
参数传递、值传递
举个例子,是我在学习过程中遇到的,应该是参数传递方面的知识(ps:概念不是很清楚,错了请指正) 第一个: StringBuffer a=new StringBuffer("A"); StringBuffer b=new StringBuffer("B"); new TestStringBuffere().operate(a,b); Sy原创 2017-10-14 19:17:31 · 362 阅读 · 0 评论 -
关于堆栈的学习
一、序言在计算机领域,堆栈是一个不容忽视的概念,堆栈是两种数据结构。堆栈都是一种数据项按序排列的数据结构,只能在一端(称为栈顶(top))对数据项进行插入和删除。在单片机应用中,堆栈是个特殊的存储区,主要功能是暂时存放数据和地址,通常用来保护断点和现场。要点:堆,队列优先,先进先出(FIFO—first in first out) 。栈,先进后出(FILO—First-In/Last-Out)。二转载 2017-10-14 19:00:52 · 768 阅读 · 0 评论 -
Collection和Collections的联系和区别(末尾还附上关于注解的知识链接)
分别对collection和collections进行了详细的介绍,并且说明了二者之间的关系转载 2017-10-14 17:56:09 · 736 阅读 · 0 评论 -
死锁
关联static、synchronizedpublic class Test{ public static void main(String[] args){ DeadLock dl0 = new DeadLock(); DeadLock dl1 = new DeadLock(); dl0.flag = 0; dl1.flag原创 2017-07-07 17:09:19 · 229 阅读 · 0 评论 -
length,length(),size()详解及区别
length属性:用于获取数组长度。int ar[] = new int{1,2,3}/*** 数组用length属性取得长度*/int lenAr = ar.length;//此处lenAr=3System.out.println("Arr length:"+lenAr);length()方法:用于获取字符串长度。String str = "Hello World Java";/*** 字转载 2017-07-10 17:39:58 · 59248 阅读 · 0 评论 -
File类的isDirectory()方法的意外发现
若是自己创建的File对象,无法使用该方法判断是否为文件夹只有通过listFile()得到的数组里面的File对象才能使用该方法判断是否为文件夹例如:d:\copy\d\d.txt文件夹package Test_File_IO_isDirectory;import java.io.File;public class Test { public static void ...原创 2019-05-10 07:59:26 · 4827 阅读 · 1 评论