java
奋斗小唉梯
以优秀自律,成功会随你而来
展开
-
Java通过递归方式实现数的阶乘,斐波那契数列与汉诺塔
何为递归算法所谓递归,通俗易懂的理解就是自己直接或者间接的调用自己来实现一些复杂的操作;自己调用自己?那不一直调用变成死循环了嘛?别急,如果我们提前定义好了出口,等到出口那里就终止调用,这样就可以完美解决死循环的问题了。下面通过递归算法求阶乘与汉诺塔两个小例子来熟悉下递归的思想。1.计算阶乘当求第n个数的阶乘的时候,我们只需要知道n-1的阶乘即可,通过n*(n-1)就可以求出n的阶乘;public static void main(String[] args) { S原创 2020-07-25 12:49:13 · 247 阅读 · 0 评论 -
java中Vector.add()方法底层源码跟踪
Vector与ArrayList的关系Vector与ArrayList底层都是基于可变数组来实现的Vector是线程安全的 ,ArrayList是不安全的(Vector的操作方法上都加了锁)数组长度需增长时,Vector默认增长一倍,ArrayList增长50% 我的上一篇博客中已经跟了ArrayList.add()方法源码https://blog.csdn.net/qq_343573...原创 2019-12-13 14:18:02 · 387 阅读 · 0 评论 -
java中ArrayList.add()方法底层源码跟踪
ArrayList中的属性ArrayList为List接口的一个实现类基于数组实现的,数据都是保存到数组中,类中定义了如下属性: //需要存放数据时定义的初始化数组大小 private static final int DEFAULT_CAPACITY = 10; //定义默认空数组 private static final Object[] DEFAULTCA...原创 2019-12-13 10:37:16 · 519 阅读 · 0 评论 -
JVM垃圾回收内存分配担保机制
jvm中一般情况下新对象的产生都是在新生代分配内存(大对象除外)当新生代内存不足以存放新产生的对象的时候,就需要进行新生代的垃圾回收Minor GC以便于给新生代腾出更多的可用内存。在Minor GC之前,首先查看老年代最大可用连续存储空间是否大于新生代所有对象之和,如果大于,则此次Minor GC是安全的,可放心的进行Minor GC,反之虚拟机会查看HandlerPromotionFa...原创 2019-11-15 10:56:56 · 694 阅读 · 0 评论 -
Linux系统安装配置JAVA
1.在usr/local下新建java文件夹cd /usr/local 定位到local文件夹mkdir java 创建java文件夹2.将提前下载好的jdk安装包jdk-8u221-linux-x64.tar.gz传输到该文件夹里并且解压下载链接:https://pan.baidu.com/s/1c18ICHOWNCjzA1sFSkp4pA提取码:9kc3解压...原创 2019-11-04 11:22:52 · 169 阅读 · 0 评论 -
JDBC连接数据库中为什么forName()方法没有调用newInstance()方法
常规连接数据库通过原生的jdbc代码进行数据库操作咱们以mysql数据库为例,分为以下7步:1.定义连接数据库的驱动全类名driverName2.定义连接数据的url3.定义用户名user与密码password4.通过Class.forName(driverName)加载驱动类5.通过DriverManager.getConnection(url,user,password...原创 2019-10-30 11:15:10 · 515 阅读 · 0 评论