- 博客(13)
- 收藏
- 关注
原创 Redis设计与实践
redis是一款基于内存的非关系型数据库,具有读写速度快等特点。C字符串SDS获取字符串长度时间复杂度O(n)O(1)API不安全,可能会缓冲区溢出不会缓冲区溢出修改字符串长度N次必然执行N次内存重分配最多N次重分配只能保存文本数据可以文本或二进制可以使用<string.h>库函数只能使用部分。
2025-03-17 20:00:43
941
原创 关于AVL树的自平衡
AVL树自平衡的四种状况本文主要介绍AVL树的四种旋转情况,在阅读本文章前,请自行学习AVL树的不平衡状态,也就是如何去找到不平衡的结点(离新插入结点最近的不平衡结点)左左AVL树的左左情况指的是新插入结点在不平衡结点(Root)的左子结点(LeftNode),并且还是在该左子节点(LeftNode)的左边(这里的左边指的是在LeftNode左边,也许不是他的左子节点,但确实就在他的左孩子结点上)。这种情况需要右旋转。插入前状态:插入结点16,可知,16就是17的左子结点:但此时不满足平衡
2021-07-01 09:19:38
242
原创 java字符串String详解,字符串常量池
系列文章目录本文主要详细介绍java当中String类的使用和底层原理,字符串常量池的相关知识。文章目录系列文章目录一、什么是String类二、String的常用方法int length();char charAt(int index)int compareTo(String anotherString)public String concat(String str)public boolean contains(CharSequence s)boolean endsWith(String suffix
2021-06-28 14:12:14
631
原创 多线程通信wait()和notify的使用
wait()使当前线程进入阻塞状态,并释放锁,必须等待唤醒notifypackage com.zhy;class Consumer extends Thread{ int i=10; Object obj; public void setObj(Object obj) { this.obj = obj; } @Override public void run() { synchronized(obj){
2021-04-30 18:37:18
181
1
原创 多线程join方法,实现接力棒功能
多线程join相关样例,接力棒不用join操作,也能实现接力棒功能package com.zhy;class A extends Thread{ @Override public void run() { System.out.println("A选手跑啊跑。。。"); try { Thread.sleep(1000); } catch (InterruptedException e) {
2021-04-30 18:23:33
238
1
原创 单例设计模式
一、什么是单例设计模式单例模式是一种常用的软件设计模式,其定义是单例对象的类只能允许一个实例存在。许多时候整个系统只需要拥有一个全局的对象,这样有利于我们协调系统整体的行为。比如在某个服务器程序中,该服务器的配置信息存放在一个文件中,这些配置数据由一个单例对象统一读取,然后服务进程中的其他对象再通过这个单例对象获取这些配置信息。这种方式简化了在复杂环境下的配置管理。二、单例实现的两个步骤1.将该方法的构造方法定义为私有方法,这样其他的代码就无法通过该类的构造方法来实例化该类的对象,只有通过该类提供的
2021-04-15 21:14:42
147
3
原创 JAVA反射机制
JAVA反射机制一、了解反射JAVA反射机制是在程序运行时,动态加载类的详细信息,主要通过反编译Class对象。在类的加载时.class文件被加载进内存,存放在方法区中,生成一个Class对象。二、获取Class对象1.通过对象名.class()的方法2.通过Class.forname(全限定名)3.通过类名.class Student stu=new Student(); Class s1=Student.class;三、通过反射获取构造方法、属性、方法 Syste
2021-04-14 13:58:10
172
1
原创 2021-04-06
mvc模式学生成绩管理系统,Dao层用mybatis框架1. 视图层主要提示信息,用户输入2. 控制层控制视图和业务层3.业务层执行业务,调用Dao4.持久层访问数据库5.mybatis配置文件主要配置数据源和映射包6.pom.xml下载jar包7.映射文件增删改查sql语句8.DAO接口映射配置文件9.实体类映射表...
2021-04-07 16:27:49
86
原创 使用mvc设计模式加jdbc的简易学生成绩管理系统
基于mvc设计模式的学生成绩管理系统设计功能:对学生成绩进行增删改查,首先创建表,user表,用于登录管理员信息,其次创建成绩表用于管理create database grade_stu;use grade_stu;create table user(id varchar(10) primary key,pass varchar(10))insert into userVALUES(2018021298,26548),(56489,458)create table corse_gr
2020-12-08 10:04:18
1473
原创 python基础
python入门基础习题递归实现n的阶乘和1!+2!+…+n!def sum(n): if n!=1: num=n factorrial=1 while num!=1: factorrial*=num num-=1 return factorrial+sum(n-1) else: return 1 while True: num=int(in
2020-11-30 09:06:45
131
原创 2020-10-24
关于IO流中缓冲区流的理解 BufferedWriter bw=new BufferedWriter(new FileWriter("E:\\Filetest\\a.txt")); for (int i = 0; i <10 ; i++) { bw.write("hello world!"); bw.newLine(); } bw.close();运行结果如图:修改样例:
2020-10-24 11:43:48
105
原创 2020-10-23
FileInputStream中关于read(byte)的返回值什么时候关于-1 FileInputStream fis=new FileInputStream("E:\\\\Filetest\\\\a.txt"); //a,txt的内容是hello world! byte[] bytes = new byte[1024];//存储读取到的多个字节 int len = 0; //记录每次读取的有效字节个数 len=fis.read(bytes);
2020-10-23 20:33:15
122
原创 2020-10-23
byte.tostring()和new String(byte)的区别byte []bytes="hello world!".getBytes(); System.out.println(bytes.toString()); System.out.println(new String(bytes));运行结果如下:new String(bytes)是将每个字节对应的字符生成,并连接成一个字符串,但bytes.toString返回的是类签名。由于java对象都继
2020-10-23 19:58:10
99
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人