- 博客(18)
- 收藏
- 关注
原创 java面试题----String、StringBuffer和StringBuilder
文章目录前言一、相同点二、不同点引子1、String2、StringBuffer3、StringBuilder总结前言String、StringBuffer以及StringBuilder这哥三的区别是面试中经常被问到的问题,回答怎么回答大家都知道,但很少会有人从底层分析为什么不同,今天我会通过底层给大家分析他们的不同一、相同点public final class String;public final class StringBuilder;public final class String
2022-03-11 14:19:21
964
1
原创 约瑟夫问题(数组实现)
文章目录一、什么是约瑟夫问题二、题目分析1.引入库2.读入数据总结一、什么是约瑟夫问题约瑟夫问题又被叫做幸存者游戏:n个人围成一个圈,从1开始数到m,数到m的人离开其他人重新围成圈,以此循环到只剩下最后一个人,约瑟夫问题解决方法:数组、链表以及递归方法,本文我用数组的方式来进行实现二、题目分析1.引入库代码如下(示例):import numpy as npimport pandas as pdimport matplotlib.pyplot as pltimport seaborn as
2022-01-02 18:22:57
1477
原创 数据结构——队列
文章目录前言一、队列是什么?二、数组实现队列1.分析队列2.分析方法3.缺点三、数组实现环形队列1.分析环形队列2.分析方法总结前言 数据结构对开发者而然如果想往高处走,那么数据结构是必要要掌握的一门技术,在这里我们来说一下数据结构中的队列一、队列是什么? 简单一点形容,队列就是我们日常排队的队列,那么有什么特点呐,我们通过生活的角度来看,排队就是为了有序的
2021-12-26 17:58:07
932
原创 集合的框架体系
在Java的集合中;集合主要分为两组(单列集合,双列集合);单列集合指的是实现了Collection的Set接口和List接口;双列集合值的是Map接口;
2021-07-19 09:02:03
139
1
原创 ArrayList、Vector、LinkedList三者的区别以及使用(面试常问)
文章目录相同点不同点1、结构2、安全3、效率使用环境相同点 ArrayList、Vector以及LinkedList都是实现了List接口的集合;不同点1、结构 在结构上来讲,ArrayList和Vector都是数组,而LinkedList是双向链表;2、安全 在安全性上来讲,Vector的方法上加了synchronized同步锁,所以是线程安全的,而ArrayList和LinkedList是线程不安全的;3、效率 
2021-07-19 08:53:45
295
1
原创 LinkedList:源码解析
文章目录一、什么是LinkedList二、LinkedList数据结构分析三、LinkedList源码分析一、什么是LinkedList LinkedList和Vector以及ArrayList一样都是一个集合,实现了List接口二、LinkedList数据结构分析 首先在给大家分析源码之前我们要了解一点,就是LinkedList的底层是什么,我们都知道Vect
2021-07-17 23:18:15
164
1
原创 Vector:源码分析
文章目录1、什么是Vector?2、Vector的源码分析3、Vector的扩容4、Vector和ArrayList的区别1、什么是Vector? Vector和ArrayList一样是一个集合,都实现了List接口2、Vector的源码分析我们首先看一下Vector中的几个属性: // 从这里我们可以看出Vector其实也是一个数组 protected Object[] e
2021-07-17 15:33:05
162
原创 ArrayList:源码解析
ArrayList在说ArrayList的扩容机制之前,首先我们要了解就是ArrayList是什么,我想这里大部分都知道ArrayList的底层其实就是一个Object数组 // transient:表示该属性不会被序列化 transient Object[] elementData; // non-private to simplify nested class access这里我们可以看到ArrayList内部其实是维护了一个elementData的Object数组,那么我们再看一下它的构造函
2021-07-16 18:59:59
100
原创 mybatis-初学到会用
mybatis,我认为大部分人在学习ssm框架的时候第一个学习的就是mybatis这个框架(嗯,反正我第一个学的就是mybatis)。然后我就想到了一个问题,为什么要先学习mybatis,而不是先去学习spring?嗯,当我把ssm框架都学习了之后,我就懂了!mybatis无论从学习难度上还是理解度上都是最简单的!非常适合作为框架入门学习。1、什么是mybatis 根据官方的说法是:MyBatis 是一款优秀的持久层框架支持自定义 SQL
2021-04-19 18:56:15
156
原创 MyBatis动态SQL常用标签——if标签
if标签 在用Mybatis之前,我们如果进行条件查询的话(条件查询需要判断从前端获取的值是否存在来进行操作),是利用代码拼接来进行实现的。 可Mybatis是把代码和sql进行分离,在mapper.xml中操作sql语句,然后通过解析mapper.xml来实现sql语句操作的,可我们在mapper.xml中无法进行代码拼接来进行条件查询。这个时候我们就需要Mybatis提供的动态SQL常用标签里的if标签来进行操作第一步:在接口中写出条件查询的方法/* 根据姓名和密码进行查询@Param是
2021-03-03 17:33:40
2597
1
原创 二分查找
代码部分: int sy(int[] arra,Integer temp) { // 第一步:将数组排序(冒泡排序) for (int i = 0; i < arra.length-1; i++) { for (int j = 0; j < arra.length-1-i; j++) { if(arra[j] > arra[j+1]) { int index = arra[j]; arra[j] = arra[j+1]; arra[j+
2020-11-14 16:30:17
66
原创 maven中settings.xml配置
maven中setting.xml我的配置<?xml version="1.0" encoding="UTF-8"?><settings xmlns="http://maven.apache.org/SETTINGS/1.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://m
2020-10-10 17:06:14
12263
原创 mybatis的一级缓存和二级缓存
mybatis的一级缓存和二级缓存1、一级缓存一级缓存是sqlSession级别的缓存。在操作数据库时需要构造sqlSession对象,在对象中有一个数据结构(HashMap),用于存储缓存数据。不同的sqlSession之间的缓存域(HashMap)是互不影响的。1.1、一级缓存工作原理命中条件缓存存在一个hash表中,通过查询SQL,查询数据库,客户端协议等作为key.在判断是否命中前,MySQL不会解析SQL,而是直接使用SQL去查询缓存,SQL任何字符上的不同,如空格,注释,都会导致
2020-10-10 16:51:43
103
原创 mybatis全局配置文件
<?xml version="1.0" encoding="UTF-8" ?><!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http://mybatis.org/dtd/mybatis-3-config.dtd"><configuration> <!-- 读取外部配置文件 --> <properties resource="jdbc.prope
2020-10-10 16:21:53
64
原创 sql——常用的数字函数
sql常用的数字函数:abs():绝对值ceil():向上取整floor():向下取整mod():求余数pow():求几次方rand():随机数round():四舍五入sqrt():开根号truncate:去除小数后几位...
2020-03-14 20:37:43
433
原创 基本类型、包装类以及类型转换
基本数据类型: byte 、short、int、float、double、long、char、boolean;整数类型(字节数):byte(1)、short(2)、int(4)、long(8);浮点类型:单精度:float(4)双精度:double(8);字符类型:char(2);布尔型:boolean(1);包装类:Byte、Integer、Short、Float 、Double、...
2020-03-14 17:30:06
167
原创 javaSwing——JFrame(常用函数)
设置用户在此窗体上发起 “close” 时默认执行的操作:this.setDefaultCloseOperatio();设置窗口的标题:this.setTitle(" ");设置窗体的布局:this.setLayout();设置窗体的大小this.setSize(int width,int height);设置窗体的大小和窗体出现的位置:this.setBounds(x, y, ...
2020-03-14 16:35:41
588
原创 JDBC的分层
为什么要分层:1、难扩展2、功能全部放在一起3、完全没有面向对象的思想分层的好处:分层开发,各司其职,方便扩展与维护。分层分为:DBHelper == 数据库的连接DAO == 数据库的操作===>CRUD//Service(biz) == 业务逻辑层UI == 用户面对的接口POJO(vo,entity) == 实体对象util===放的是帮助...
2020-03-14 16:23:58
140
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人