java基础
文章平均质量分 64
江南小码哥
这个作者很懒,什么都没留下…
展开
-
mybatis批量删除报错
2.mybatis批量删除出错1.Mybatis报错(Parameter ‘**’ not found. Available parameters are [array])这个错误一般是出现在批量删除传数组的时候,出现的错误先上代码<delete id="deleteBatch" > delete from measurement_info where id in <foreach collection="ids" item="id" separat原创 2021-03-20 15:43:47 · 1057 阅读 · 0 评论 -
hashMap基础源码解析
2.hashMap基础源码解析默认初始化容量:static final int DEFAULT_INITIAL_CAPACITY = 1 << 4; // aka 16数组最大容量:static final int MAXIMUM_CAPACITY = 1 << 30;默认加载因子:static final float DEFAULT_LOAD_FACTOR = 0.75f;链表调整为红黑树的链表长度阈值(JDK1.8):static final int TR原创 2021-03-20 15:07:39 · 118 阅读 · 0 评论 -
初识HashMap
1.初识HashMap下面是出自于jdk1.8中文文档缩写的一段话基于哈希表的 Map接口的实现。这种实现提供了所有可选的Map操作,并允许 null值和 null关键。(这 HashMap类大致相当于 Hashtable,除了它是不同步的,允许空值。)这类做任何保证Map的秩序;特别是,它并不能保证订单将随时间保持恒定。这个实现的基本操作提供了稳定的性能(get和put),假设哈希函数的分散元素之间的正确的桶。在集合视图迭代需要时间成正比的“能力”的HashMap实例(桶的数量)加上其尺寸(原创 2021-03-20 10:40:32 · 120 阅读 · 0 评论 -
类的加载过程
1.类的加载过程1.1 字节码在聊 Java 类加载机制之前,需要先了解一下 Java 字节码,因为它和类加载机制息息相关。计算机只认识 0 和 1,所以任何语言编写的程序都需要编译成机器码才能被计算机理解,然后执行,Java 也不例外。Java 在诞生的时候喊出了一个非常牛逼的口号:“Write Once, Run Anywhere”,为了达成这个目的,Sun 公司发布了许多可以在不同平台(Windows、Linux)上运行的 Java 虚拟机(JVM)——负责载入和执行 Java 编译后的字节码原创 2021-03-19 17:19:30 · 121 阅读 · 2 评论 -
Java中的泛型
10.Java中的泛型泛型最初的诞生是因为,代码的重用,泛型的产生本质是来源于软件设计!在软件设计的过程中经常会用到容器类,容器类代码都一样只是数据类型不同,如果能够让一种类型容纳所有类型,就可以实现代码重用,但是没有一种类型可以容纳所有类型,为了解决容器的问题,由此就产生了泛型设计。由此可见,泛型是一个不确定的参数类型,即“参数化类型”!泛型在java中有很重要的地位,在面向对象编程及各种设计模式中有非常广泛的应用。那么怎么使用泛型,进行软件设计呢?泛型有什么使用的方式呢?有以下三种:泛型类原创 2021-03-03 16:04:01 · 106 阅读 · 2 评论 -
Java的== 与 equals区别
9.Java的== 与 equals区别9.1 ==方法介绍==方法是用于比较地址时候相同。如果地址相同,就返回true.如果地址不同,就返回fales。这是我们最基本的理解的方式,一下是大佬们更加详细的解释它的作用是判断两个对象的地址是不是相等。即,判断两个对象是不是同一个对象(基本数据类型比较的是值,引用数据类型比较的是内存地址)。基本数据类型:byte,short,char,int,long,float,double,boolean。他们之间的比较,应用双等号(==),比较的是他们的值。原创 2021-03-03 15:15:07 · 97 阅读 · 3 评论 -
hashCode() 和 equals() 的关系
8.hashCode() 和 equals() 的关系8.1equals()equals() 方法用于比较两个对象是否相等,它与 == 相等比较符有着本质的不同。在万物皆对象的 Java 体系中,系统把判断对象是否相等的权力交给程序员。具体的措施是把 equals() 方法写到 Object 类中,并让所有类继承 Object 类。 这样程序员就能在自定义的类中重写 equals() 方法, 从而实现自己的比较逻辑。关于 equals() 和 == 的区别你可以–参考这篇文章–hashCode(原创 2021-03-02 16:57:41 · 261 阅读 · 0 评论 -
认识String类
7.认识String类7.1String类是java.lang包中的一个类,是我们日常中使用的非常多的一个类,它不是基础数据类型,底层实现是字符数组来实现的:String类是由final修饰的,所以是无法被继承的,一旦创建了String对象,我们就无法改变它的值。因此,它是线程安全的,可以安全地用于多线程环境中。接下来来说说创建字符串会有哪几种方式1.使用new去创建一个字符串2.使用""去创建一个字符串3.使用+去拼接字符串他们的具体的区别是什么呢?下面现在分析1和2的区别,先上代码原创 2021-03-02 16:13:54 · 78 阅读 · 0 评论 -
List集合中的remove元素
List集合中的remove元素1.通常,我们会进行一个for循环,然后想要移除的元素与循环的元素进行一个对比,此时如果他们的值相等,就把此时循环到的那个值相等的元素进行移除,这是我们最基本的思路,但是,List集合是可重复的,还有我们的for循环是否在某些是否会存在一些Bug呢?下面我们先上代码package com.example.demo;import java.util.ArrayList;import java.util.List;import java.util.concurren原创 2021-02-05 15:36:16 · 1092 阅读 · 1 评论 -
判断元素是否在集合中
判断元素时候在集合中通常,我们判断元素时候存在在集合中 ,最常用的方法就是,把数据全部加载到集合中,然后进行集合遍布,对单个集合进行一个比较,但是这样实现是能实现,但是当数据量过于庞大的时候,就会很大程度的影响到系统想性能了。所以有一个新的概念提出:布隆过滤器(英语:Bloom Filter)是 1970 年由布隆提出的。它实际上是一个很长的二进制向量和一系列随机映射函数。主要用于判断一个元素是否在一个集合中。通常我们会遇到很多要判断一个元素是否在某个集合中的业务场景,这个时候往往我们都是采用 Has原创 2021-02-04 17:16:22 · 5229 阅读 · 0 评论 -
Java 中文件之魔数
Java 中令人匪夷所思的 Magic 之魔数先来讲讲一个故事,公司突然有一个需求,客户提交的文件,让你获取到他提交的文件到底是一个什么文件,这个不是小事一桩吗?直接上代码。public static String getFileTypeByExt(String filePath) { if (StringUtils.isBlank(filePath)) { return null; } return filePath.toLowe原创 2021-02-04 16:58:13 · 1261 阅读 · 3 评论 -
foreach循环
1.foreach循环本篇文章参考纯洁的微笑文章 :http://www.justdojava.com/2019/12/14/java-foreach/foreach简直就是功能强大,不管是什么数组,集合都可以用foreach搞定,比如小马哥的上一篇博客中:https://blog.csdn.net/weixin_44109717/article/details/113651457写到了for循环的日子,我们可以这样用,enum OptionFirst {Tom, Jerry, Jack, Mary原创 2021-02-04 16:11:59 · 3068 阅读 · 4 评论 -
java循环的正确使用
java循环的正确使用1.java中的循环的正确使用一般循环一个数组的时候,使用for循环循环一个集合的时候,使用Iterator迭代器enum Option {Tom, Jerry, Jack, Mary}Collection<Option> options = Arrays.asList(Option.values());for(Iterator<Option> i = options.iterator(); i.hasNext();){ for (Iter原创 2021-02-04 16:00:15 · 255 阅读 · 1 评论