Java杂记
Java
chyang1999
这个作者很懒,什么都没留下…
展开
-
java编程思想阅读笔记 第二章
1. Java的对象存储在什么地方呢?有五个不同的地方可以存储数据:1.寄存器这是最快的存储区,因为它位于不同于其它存储区的地方-处理器的内部(学过计算机组成或者体系结构的同学应该都知道)。但是寄存器的数量极其有限,所以寄存器根据需求进行分配。你不能直接控制,也不能在寄存器中感觉到任何寄存器存在的迹象。2.堆栈位于通用RAM(随机访问存储器)中,但通过堆栈指针可以从处理器那里获原创 2017-04-11 20:45:23 · 222 阅读 · 0 评论 -
Java中的Iterable和Iterator详解
关于这两个概念,我还是在使用Java中的集合类的时候产生的疑问,有时候分不清这两个概念之间的区别,于是查了很多资料,终于搞懂了,在这里写下自己的笔记,以便随时查找。原创 2017-09-26 20:59:42 · 2412 阅读 · 0 评论 -
Java数据类型(收藏)
先引用一张图,这张图出自博客[1]:从图中可以看到,Java的数据类型分为基本数据类型和引用数据类型。Java有8种基本类型,分为四类:1.逻辑型,boolean只能取true或false2.字符型,char3.整型,byte,short,int long4.浮点型,float,double基本类型数据直接在栈中进行数据的内存分配,而对于引用类型的数据,数据的引原创 2017-09-11 19:06:49 · 164 阅读 · 0 评论 -
Java String判等问题
“==”判断符号左右两个对变量(引用类型)是否指向同一内存地址equals()方法判断两个对象是否一样(所有成员的值相同)例1:String a = "abc";String b = "abc";System.out.println(a == b); //trueSystem.out.println(a.equals(b)); //true在例1中,“abc”是放在常量池(con原创 2017-08-13 15:44:16 · 1624 阅读 · 0 评论 -
辗转相除法详解
欧几里得算法,又称辗转相除法,用于求两个自然数的最大公约数。算法基于数论等式gcd(a,b)=gcd(b,a mod b),其时间复杂度为O(logk),其中k=max(a,b),若k的位数为n,则时间复杂度为O(logn)。时间复杂度的证明比较麻烦,这里就不证明了,知道是这样就行了。辗转相除法基于如下原理:两个整数的最大公约数等于其中较小的数和两数的相除余数的最大公约数。辗转相除法可原创 2017-08-13 10:02:12 · 8605 阅读 · 0 评论 -
筛选法查找100以内的素数
所谓筛选法,是指从小到大筛去一个已知素数的所有倍数。(这是我第一次听说筛选法)例如:根据2,我们可以筛去4,6,8,...,98,100等根据3,我们可以筛去9,15,...,99等(6和12已经被筛去)根据5,......package com.cao.test;public class Example_2 { public static void main(Stri原创 2017-08-10 17:12:27 · 830 阅读 · 0 评论 -
0-n之间的1的个数何时等于n(Java程序员面试宝典)
Consider a function which ,for a given whole number n, returns the number of ones required when writing out all numbers between 0 and n.for example, f(13)=6. notice that f(1)=1. what is the next lar原创 2017-08-10 16:22:20 · 319 阅读 · 0 评论 -
FilenameFilter接口
在学习Java IO的时候,提到了File类,File类的对象中有两个list方法:list():不带参数,可以获得此File对象包含的全部列表list(FilenameFilter filter):获取受限的列表,相当于一个过滤器,把不符合条件的File对象过滤掉。在Java编程思想这本书里面对第二个方法描述得可高端了:DirFilter这个类存在的唯一原因是accept()方法,创原创 2017-06-14 08:35:21 · 6139 阅读 · 2 评论 -
Mybatis log4j日志配置
最近在某大神的网站上学习Mybatis,但是关于日志输出这一块没有怎么看懂,而且大神网站上的配置感觉少了一步,导致自己陷进了坑里,一晚上下来也没输出个东西出来,心塞。。。最后,查遍了网上的各种资料,终于解决了这个问题,写在这里,等哪天自己忘了,再来查阅。首先,要先在Mybatis的配置文件里面进行生明,也就是图中红线所示的部分。然后在src目录下新建log4j.properti原创 2017-06-13 20:49:21 · 1191 阅读 · 0 评论 -
Java反射机制总结
刚开始学习Java的时候,这部分的内容并没有引起我的重视,因为在平常的编程中很少用到。直到有一天,忘了是看什么来着,接触到这个知识点,搞得自己一脸懵逼,所以翻阅了网上的各种资料,简单总结一下。什么是反射?Java反射机制是指在程序运行时加载、探知、使用编译期间完全未知的类型。也就是说,Java可以加载一个在运行时才得知其类型的类,获悉其完整构造,并生成其对象实体、或对其fields原创 2017-06-01 14:14:18 · 461 阅读 · 0 评论 -
Java的格式化输出
Java的格式化输出目前分为三种:printf()函数format()函数Formatter类一. printf()函数和format()函数这两个函数是等价的,只需要一个简单的格式化字符串,加上一串参数即可,每个参数对应一个格式修饰符二. Formatter类未完待续。。。。。原创 2017-05-19 15:33:59 · 221 阅读 · 0 评论 -
java编程思想阅读笔记 第三章(赋值操作=)
Java的赋值操作(=)应该分为两种情况:1. 针对基本数据类型的赋值操作2. 针对对象的赋值操作基本数据类型的赋值很简单。基本数据类型存储了实际的数值,而并非是指向对象的引用,所以在为其赋值的时候,是直接讲一个地方的内容复制到了另一个地方。例如对基本数据类型使用a=b,那么b的内容直接复制给a。若接着又修改了a,而b根本不会受影响。以交换两个数为例:public class原创 2017-04-25 20:17:47 · 464 阅读 · 0 评论 -
java编程思想阅读笔记 第三章(==与equals)
主要是==和equals()这两个的差别原创 2017-04-26 15:51:19 · 197 阅读 · 0 评论 -
LinkedList中的部分方法讲解
LinkedList中添加了可以使其用作栈、队列、双端队列的方法。这些方法中有些彼此之间只是在名称上有些差异,或者只存在些许差异,以使得这些名字在特定用法的上下文环境中更加适用。这里列出几组差异不大的函数:第一组:返回列表的第一个元素,而并不删除它getFirst()和element()完全一样,如果列表为空,则抛出NoSuchElementException。peek()原创 2017-05-14 17:49:08 · 367 阅读 · 0 评论 -
Java List容器中与equals()方法相关的那些方法
在Java的容器类List的一些方法中,方法的执行是根据equals()方法的行为而有所不同,这些方法目前我遇到的有:contains()方法remove()方法indexOf()方法retainAll()方法removeAll()方法如上图所示,如果我们使用Pets类继承自Object类的默认equals()方法,那么结果是false。如果我们重写默认的e原创 2017-05-12 22:04:27 · 2210 阅读 · 0 评论 -
Java数组和字符串的长度计算
相信这是一个很多人都踩过的坑。在Java中,获取数组的长度是利用数组的属性length。而字符串的长度则是字符串对象中的一个获取大小的函数length(),要牢记这两个区别,以免踩坑。原创 2017-05-12 19:55:43 · 8876 阅读 · 0 评论 -
Java中的抽象类和接口
关于Java中的抽象类和接口的讲解原创 2017-05-10 16:39:38 · 282 阅读 · 0 评论 -
Java中的comparable和comparator详解
这两个概念也是我比较困惑的,每次都是看懂了之后,再去用的时候又忘了,所以在这里做好笔记,以便随时查阅。原创 2017-09-26 21:07:22 · 646 阅读 · 0 评论