java学习过程的简单记录

smilez      2022-04-15     137

关键词:

1、LinkedList与ArrayList的区别

1)、LinkedList是基于链表的数据结构,ArrayList是实现了基于动态数组的数据结构;

2)、对于查询(get),ArrayList比LinkedList效率高,因为LinkedList要移动指针

         对于新增(insert)和删除(remove),LinkedList比ArrayList效率高,因为ArrayList要移动数据

代码如下:

public class ComporeTest {

private static Logger logger = LoggerFactory.getLogger(ComporeTest.class);
private static Integer N = 5000;

public static Long timeList(List list){
Long start = System.currentTimeMillis();
logger.info("start{}",start);
for(int i = 0; i < N; i++){
list.add(i);
}
logger.info("timeList{}",System.currentTimeMillis() - start);
return System.currentTimeMillis() - start;
}

public static List addList(List list){
Object o = new Object();
for(int i = 0;i < N; i++){
list.add(0,o);
}
logger.info("测试ArrayList与LinkedList的效率");
return list;
}

static Long readList(List list){
long start = System.currentTimeMillis();
for(int i = 0; i < list.size(); i++){
list.get(i);
}
return System.currentTimeMillis() - start ;
}

public static void main(String [] args){
logger.info("ArrayList添加"+N+"条消耗时间:{}",timeList(new ArrayList()));
logger.info("LinkedList添加"+N+"条消耗时间:{}",timeList(new LinkedList()));
List arrayList = addList(new ArrayList<>()) ;
List linkedList = addList(new LinkedList<>());
logger.info("ArrayList查询"+N+"消耗时间:{}",readList(arrayList));
logger.info("LinkedList查询"+N+"消耗时间:{}",readList(linkedList));
}
}
测试结果:

技术分享图片

 










































shader的学习

一、SnowTrack(雪跟踪)前言这篇小文简单介绍一下如何在Unity中利用shader很简单的实现雪地效果。01雪地痕迹的效果实现雪地印痕的思路其实也很简单吗,既记录玩家移动过程中的位置,之后再根据这些数据修改雪地的mesh即可。02工... 查看详情

mybatis学习记录3mappermethod类

主题  之前学习了一下MapperProxy的生产过程,自定义Mapper类的对象是通过动态代理生产的,调用自定义方法的时候实际上是调用了MapperMethod的execute方法:mapperMethod.execute(sqlSession,args);所以想再简单学习记录下MapperMethod类 组成从... 查看详情

java学习记录7异常

1.异常机制异常(Exception):意思是例外。软件程序在运行过程中遇到的例外。格式:try{}catch(Exceptione){e.printStackTrace();}Java是采用面向对象的方式来处理异常的。处理过程:抛出异常:在执行一个方法时,如果发生异常,则这个方... 查看详情

java学习记录

    在本周,我学习了一下java基础的一些相关知识,有Java的数据类型、变量与常量、运算符与表达式,以及选择语句知识的学习,最后还有循环语句的学习。在本周的学习过程中,遇到了许多问题。学习进度明显... 查看详情

数据库学习记录(代码片段)

1.数据库中的exec命令,可以用来执行存储过程,可以把存储过程理解为定义在sqlserver数据库中的函数,而exec就是去执行该定义的函数,既然是函数,那么定义时就有一下几种类型  1)无参数无返回值的  2)有参数... 查看详情

java学习--简单分析arraylist实例化的过程(代码片段)

ArrayList作为List接口的实现类,是Java为我们提供的一个容器,它对应着数据结构中的顺寻表结构,并且提供了一组针对于表中元素的增删改查操作。这里主要是简单分析一下ArrayList实例化的过程,以及它的扩容机... 查看详情

java学习--简单分析arraylist实例化的过程(代码片段)

ArrayList作为List接口的实现类,是Java为我们提供的一个容器,它对应着数据结构中的顺寻表结构,并且提供了一组针对于表中元素的增删改查操作。这里主要是简单分析一下ArrayList实例化的过程,以及它的扩容机... 查看详情

爬虫学习记录

0.基础知识网络爬虫爬虫,即网络爬虫,可以简单的理解为,行走在互联网这张网上的爬虫,你可以通过爬虫来抓取你在这张网上你想要的资源浏览网页的过程我们平时浏览网页就是在浏览器输入网址,然后网页就显示了出来,... 查看详情

mybatis学习

什么是MyBatis?MyBatis是一款优秀的持久层框架,它支持定制化SQL、存储过程以及高级映射。MyBatis避免了几乎所有的JDBC代码和手动设置参数以及获取结果集。MyBatis可以使用简单的XML或注解来配置和映射原生信息,将接口和Java的POJ... 查看详情

ignite从0到1的学习过程记录-第一篇:安装和体验

1、学习背景  之前做一个根据wifi点位实时计算个人的轨迹的应用,使用Hbase,尽管做了些优化,但是在计算性能上仍然不能满足需求,当时考虑是否可以用分布内存计算框架来解决,不过项目后来由于数据来源问题搁置也就没... 查看详情

java基础学习笔记04

Java基础学习笔记~~Java基础04面向过程&面向对象面向过程思想步骤清晰简单,第一步做什么,第二步做声明......面对过程适合处理一些较为简单的问题面向对象思想物以类聚,分类的思维模式,思考问题首先会解决问题需要哪... 查看详情

oracle相关的个人学习记录,不定期更新

存储过程基本语法http://www.cnblogs.com/hero4china/articles/base_rule_oracle_procedure.html存储过程基本写法http://www.linuxidc.com/Linux/2013-11/93196.htm存储过程简单例子http://www.cnblogs.com/yueers/p/5710446.html 注意点:存 查看详情

这是一个java学习历程记录(无知识,有心情)

   ♥Java的学习我并不打算按照任何书籍或资料的顺序进行,由于之前有过基础的学习,所以我计划根据实践编程或其他学习过程中遇到的问题进行分散式知识点的学习方法。    ——周周(2020.4.6)  ... 查看详情

mybatis学习

Mybatis一、简介1.1什么是MybatisMyBatis是一款优秀的持久层框架,它支持定制化SQL、存储过程以及高级映射。MyBatis避免了几乎所有的JDBC代码和手动设置参数以及获取结果集。MyBatis可以使用简单的XML或注解来配置和映射原生类型、接... 查看详情

java学习记录-类加载机制

类加载机制主要分3块:类加载器(ClassLoader)、类加载过程和双亲委托(破坏双亲委托) 类加载器:是Java运行时环境(JavaRuntimeEnvironment)的一部分,负责动态加载Java类到Java虚拟机的内存空间中。jdk自带了三种类加载器,分别... 查看详情

java设计模式学习记录-外观模式

前言这次要介绍的是外观模式(也称为门面模式),外观模式也属于结构型模式,其实外观模式还是非常好理解的,简单的来讲就是将多个复杂的业务封装成一个方法,在调用此方法时可以不必关系具体执行了哪些业务,而只关... 查看详情

mybatis入门学习

一、MyBatis入门简要介绍(百科)  MyBatis是支持普通SQL查询,存储过程和高级映射的优秀持久层框架。MyBatis消除了几乎所有的JDBC代码和参数的手工设置以及结果集的检索。MyBatis使用简单的XML或注解用于配置和原始映射,将接... 查看详情

jenkins学习笔记

...己对于Jenkins的探索过程记录下来,如下。 目录Jenkins学习笔记(一):我对Jenkins的宏观认识Jenkins学习笔记(二):很简单的发布一次Jenkins学习笔记(三):我们的Java项目是这么发布的  查看详情