自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(30)
  • 收藏
  • 关注

原创 自定义tabBar

在components中新建一个文件夹tabBar,在其中构建组件tabBar。在需要展示tabBar的页面引入components中的tabBar文件。

2023-11-23 16:54:58 156

原创 顶部和底部固定,中间区域滑动布局

使用flex布局,将顶部和底部设置为固定高度,中间main区域设置为flex:1占据除顶部和底部以外的全部内容。

2023-11-23 10:29:18 122

原创 小程序生命周期

小程序的生命周期有三种:应用级生命周期,页面级生命周期以及组件生命周期。

2023-11-22 15:29:31 58

原创 小程序开发问题--模拟器内容显示在左上角

出现这种现象的原因是项目默认开启了Skyline渲染模式,因为Skyline渲染模式不支持原生导航栏,所以在json文件中设置的导航栏失效,文字就会向上移动,如果想要使用原生的导航栏,可以将app.json文件中的下图所展示的两个内容去掉,保存后重新编译即可。

2023-11-21 10:51:06 633

原创 底部安全距离以及胶囊位置

1.底部安全距离全面屏手机与非全面屏手机的不兼容性主要就是由于底部按钮和选项卡与底部黑线重叠,而安全区域就是指的不受圆角、齐刘海以及小黑条影响的部分。底部安全距离可以使用使用微信官方API:getSystemInfo()中的safeArea对象进行适配。该API的具体使用详情链接:[getSystemInfoSync]在app.js中可以通过计算得到底部安全距离的高度:// app.jsApp({ onLaunch() { const {safeArea:{top,height},

2023-11-20 17:23:45 254

原创 echarts使用总结

grid可以填具体的数值,也可以是百分比(占盛放容器大小的百分比),left代表的是与容器左侧的空隙,right代表与容器右侧的空隙,top和bottom分别代表与上下的空隙。

2023-11-10 16:37:57 15

原创 Vue中的数据代理

数据代理–通过一个对象代理另一个对象中的属性(读和写)<script> let obj={x:100} let obj2={y:200} //通过obj2来代理obj的值 Object.defineProperty(obj2,'x',{ get(){ return obj.x; }, set(value){

2021-12-28 11:25:43 391

原创 ES6生成器

ES6生成器函数:说明:(1)生成器函数返回的结果是迭代器对象,调用迭代器对象的 next 方法可以得到yield 语句后的值(2)yield 相当于函数的暂停标记,也可以认为是函数的分隔符,每调用一次 next方法,执行一段代码function * gen(){ // console.log(111); yield '一只没有耳朵'; // console.log(222); yield '一只没有尾部'; // console.log(333);

2021-12-20 15:58:59 166

原创 ES6箭头函数

箭头函数注意点

2021-12-20 15:26:22 100

原创 ES6解构赋值

数组的解构赋值:按照位置对变量赋值对象的解构赋值:对象的属性没有次序,变量必须与属性同名给变量起别名:在变量后面加一个 :

2021-12-20 14:53:22 155

原创 AJAX学习

AJAX是一种在无需重新加载整个网页的情况下,能够更新部分网页的技术。原生AJAX创建XMLHttpRequest对象var xhr=new XMXLHttpRequest();向服务器发送请求xhr.open("GET","http://127.0.0.1/8000/ajax");xhr.send();open方法:open(method,url,async): method:请求的类型;GET 或 POST url:文件在服务器上的位置 async:true(异步

2021-12-15 16:49:13 1043

原创 原型与原型链

原型与原型链prototype__ proto __原型链(别名:隐式原型链)Object和Functionprototype每一个函数都有一个prototype属性(显式原型),这个属性指向的是一个对象的引用(该对象称为原型对象)。默认指向的是一个空的Object对象(此时我们没有给该构造函数的原型中加入方法和属性)。原型对象中有一个属性constructor,指向的是函数对象。可以给原型对象加方法和属性(一般情况下是方法),可以做到方法在实例对象通用。可以看出通过对构造函数Person的

2021-12-07 20:11:12 487

原创 排序算法---插入排序

插入排序直接插入排序基本思想代码实现希尔排序基本思想实例演示代码实现交换式移位式直接插入排序基本思想直接插入排序(Straight Insertion Sort)的基本思想是:把n个待排序的元素看成为一个有序表和一个无序表。开始时有序表中只包含1个元素,无序表中包含有n-1个元素,排序过程中每次从无序表中取出第一个元素,将它插入到有序表中的适当位置,使之成为新的有序表,重复n-1次可完成排序过程。代码实现思路分析:第一轮排序代码:package com.company.sort;impo

2021-09-09 16:44:47 111

原创 排序算法---选择排序

选择排序基本原理实例演示一级目录基本原理基本思想是:首先在未排序的数列中找到最小(or最大)元素,然后将其存放到数列的起始位置;接着,再从剩余未排序的元素中继续寻找最小(or最大)元素,然后放到已排序序列的末尾。以此类推,直到所有元素均排序完毕。实例演示一级目录第一轮排序:注意for循环i=1,因为第一轮的时候假设最小的数就是第一个,所以比较从第二个数开始,也就是i=1package com.company.sort;import java.util.Arrays;public cla

2021-09-07 19:28:51 61

原创 排序算法--冒泡排序

冒泡排序基本思想实例演示代码实现基础实现代码优化基本思想基本思想: 冒泡排序,类似于水中冒泡,较大的数沉下去,较小的数慢慢冒起来,假设从小到大,即为较大的数慢慢往后排,较小的数慢慢往前排。直观表达,每一趟遍历,将一个最大的数移到序列末尾。实例演示排序的过程:两两比较,以第一趟排序的过程距离:10跟1比较, 10>1, —》1 1010跟35比较,10<35, —》1 10 3535跟61比较,35<61, —》1 10 35 6161跟

2021-09-07 17:19:56 1324

原创 数据结构与算法---栈

栈数组模拟栈的思路分析:

2021-09-03 19:28:50 65

原创 equals和==

在看别人写代码的时候,有时候会看到用==,有时候看到equals,今天写中缀转后缀时,发现了这两个还是有挺大的区别的。首先,java中提供了8种基本数据类型,分别是:byte,short,long,int,float,double,boolean,char对于基本数据类型,他们进行比较的时候用的是:==,比较的是他们的值其次,对于引用数据类型,引用数据类型分为三种:类 Class,接口 Interface,数组 Array此时==比较的是地址值在默认情况下,equals比较的也是地址值,但是在一些

2021-09-03 19:28:25 47

原创 数据结构与算法---链表(java)

数据结构与算法--链表链表单向链表功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入链表链表是以节点的方式来进行存储的(链式存储),每一个节点包含data域,next域(next是用来指向下一个节点的)。链表的各个节点不一定是按照

2021-08-27 19:29:37 115

原创 IO流学习

IO流按操作数据单位不同:字节流(8bit),字符流(16bit)按数据流的流向不同:输入流,输出流按流的角色的不同分为:节点流,处理流(抽象基类)字节流字符流输入流InputStreamReader输出流OutputStreamWriter节点流:FileInputStream FileOutputStreamFileReader FileWriter两种read()方法:@Test public void test()

2021-05-10 22:18:14 55

原创 mybatisplus学习(三)

mybatisplus实现自动填充第一步:在实体类里面进行自动填充属性添加属性package com.example.mpdemo.entity;import com.baomidou.mybatisplus.annotation.FieldFill;import com.baomidou.mybatisplus.annotation.TableField;import lombok.Data;import java.util.Date;@Datapublic class User

2021-05-10 22:16:50 94

原创 mybatisplus学习(二)

@TableId(value = "id",type = IdType.AUTO)mybatisplus主键类型:IdTypenone:没有主键auto:自动增长input:手工输入id_worker:实体类用Long id,表的列用bigint,int类型大小不够(雪花算法,生成分布式ID)id_worker_str:实体类使用String id,表的列使用varchar 50uuid:实体类使用String id,列使用varchar 50mybatisplus指定表名:位置:在类.

2021-05-08 10:44:04 452

原创 mybatisplus学习(一)

基本配置:新建一个spring Initializer项目,加入spring web ,jdbc api,Mysql driver三个基本依赖创建好项目后,在pm.xml文件中加入下面的两个依赖:<dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus-boot-starter</artifactId> <version>

2021-05-06 14:34:05 258

原创 springboot连数据库基本配置

数据库配置:properties文件:server.port=8088//端口号spring.datasource.url=jdbc:mysql://localhost:3306/数据库名?serverTimezone=UTCspring.datasource.driver-class-name=com.mysql.cj.jdbc.Driverspring.datasource.username=用户名spring.datasource.password=密码yml文件:server:

2021-04-28 16:52:59 91

原创 java学习--泛型

泛型自定义泛型结构泛型类,泛型接口,泛型方法定义泛型类:注:类的内部结构就可以使用类的泛型public class fanxing <T>{ String name; int id; T ftype; public fanxing(){ }; public fanxing(String name,int id,T ftype){ this.name=name; this.id=id; this.ft

2021-04-25 19:00:53 79

原创 java学习--集合(二)

Map接口Map:双列数据,存储key-value对的数据

2021-04-25 15:17:21 76

原创 java学习--集合(一)

Collection接口中的常用方法:向Collection接口的实现类的对象中添加数据obj时,要求obj所在类要重写equals()1.contains(Object obj):集合中是否含有指定元素2.containsAll(Collection col):当前集合中是否含有col中的所有元素3.remove(Object obj):从当前集合中删除obj元素,移除成功返回true,移除失败返回false4.removeAll(Collection col):从当前集合中移除col中的所有元

2021-04-24 11:36:22 57

原创 java常用类String的使用

一、String1. String:字符串,使用一对“ ”引起来表示2.String声明了Serializable接口:表示字符串是支持序列化的实现了Comparable接口:表示字符串是可以比较的3. String内部定义了final char[] value用于存储字符串数据4.String:代表不可变的字符序列,简称,不可变 性体现:1.当对字符串重新赋值时,需要重写指定内存区域赋值,不能使用原有的value进行赋值。2.当对现有的字符串进行拼接(连接)操作时,也需要重新指定内存区域赋

2021-04-21 19:24:09 73

原创 java学习--多线程(三)

多线程学习(三)线程通信三个方法:wait():一旦执行此方法,当前线程就进入阻塞状态,并释放同步监视器。notify():一旦执行此方法,就会唤醒被wait的线程,如果有多个线程被wait,就唤醒优先级高的那个。notifyAll():一旦执行此方法,就会唤醒所有被wait的线程。说明:1.以上三个方法是使用在同步代码块或者同步方法中的,lock锁中有其他方法。2.以上三个方法的调用者必须是同步代码块或同步方法中的同步监视器,否则会出现IllegalMonitorStateExceptio

2021-04-19 16:26:20 36

原创 java学习--多线程(二)

java多线程学习多线程学习(二)死锁问题线程的安全问题多线程学习(二)死锁问题死锁:不同的线程分别占用对方需要的同步资源不放弃,都在等待对方放弃自己需要的同步资源,就造成了线程的死锁。先看死锁概率较低的程序:public class ThreadTest { public static void main(String[] args) { StringBuffer s1=new StringBuffer(); StringBuffer s2=new Str

2021-04-19 13:55:17 30

原创 java学习---多线程

这里写自定义目录标题进程,线程进程线程多线程的创建合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入进程,线程进程进程是程序的一次执行过程,或是正在运行的一个程序,是一个动态的过程,有它自身的产生、存在和消亡的过程。一个进程有自己的方法区

2021-04-17 11:37:34 44

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除