a = “k:1|k1:2|k2:3|k3:4”b = a.split("|") #切割字符串形成列表c = dict()for i in b: #遍历列表 d = i.split(':') #将列表中的字符串切割生成列如[k,1] c[d[0]] = int(d[1]) #创建字典key值为d[0 ...
分类:
编程语言 时间:
2020-02-16 20:57:47
阅读次数:
238
最近在做的一个项目里传输的json数据比较大,造成了线程间的卡顿,于是想优化一下json数据的体积。 可以看到在json文件里有很多无用的字段,这些字段占据了大量的存储空间。 对数据的结构作一下优化,如下 将对象的key值单独存在一个数组里,value值存在另一个数组。 调整数据结构后体积的变化也非 ...
分类:
Web程序 时间:
2020-02-15 23:44:37
阅读次数:
158
vue使用v-for渲染完组件,删除数据时总是删除最后一个解决方案 原因: index值每次渲染都会重新生成, key值不能绑定index。 例如第一次渲染0,1,2,3,4,5 删除2的数据,重新渲染的时候又会生成0,1,2,3,4 所以最后显示结果为5的内容消失了,需要重新刷新页面才能恢复正常显 ...
分类:
其他好文 时间:
2020-02-14 18:34:20
阅读次数:
64
jdk 集合大家族之Map 前言: 之前章节复习了Collection接口相关,此次我们来一起回顾一下Map相关 。本文基于jdk1.8。 1. HashMap 1.1 概述 + HashMap相对于List的数据结构而言,它是键值对的集合。主要通过提供key值来取相对应的value的值。而不是通过 ...
分类:
其他好文 时间:
2020-02-13 19:07:48
阅读次数:
62
Redis常用的数据类型: String Hash List Set zSet Sorted set String类型 判断是否有key所对应的值,有则返回true,没有则返回false redisTemplate.hasKey(key) 有则取出key值所对应的值 redisTemplate.op ...
分类:
其他好文 时间:
2020-02-10 22:14:54
阅读次数:
1080
fhq-Treap是一种非常优秀的无旋平衡树。下面我们来介绍他的函数原理 我们先介绍他的两个重要函数 1.spilt(分割函数) 我们将整棵树按照值的大小分割成x,y两棵树,x中的值都是小于等于key值的 这样我们就可以通过递归操作来解析,下面看具体代码 void spilt(int p,int k ...
分类:
其他好文 时间:
2020-02-10 19:46:52
阅读次数:
119
一、常用的存储数据的三个指令主要的三个存储数据的指令分别是:set、add、replace。set指令:是直接保存到一个叫做key的数据到服务器上(不管这个数据是否存在);add指令:是添加一个数据到memcached,如果这个key已存在,则不进行添加,若不存在,则执行添加;replace指令:也是添加一个数据到memcached,但其与add指令相反,如果这个key存在,那么就修改其key值,
分类:
系统相关 时间:
2020-02-09 00:41:02
阅读次数:
160
原文:基于redis实现分布式锁 基于redis实现分布式锁,主要原理在于key,每次访问时判断当前key是否存在于redis中,若存在则阻塞,若不存在则加入redis中同时获取redis锁。 但是java中获取key值,及向redis中塞入key以下是两个操作不是原子性的 1、 redis.get... ...
分类:
其他好文 时间:
2020-02-08 15:38:02
阅读次数:
42
Redis五种数据类型:String、Hash、List、Set、SortedSet Redis中所有的数据都是字符串。命令不区分大小写,key是区分大小写的。Redis是单线程的。Redis中不适合保存内容大的数据。 String:key-value(做缓存) set key值 value值 12 ...
分类:
其他好文 时间:
2020-02-08 13:29:39
阅读次数:
59
基于redis实现分布式锁,主要原理在于key,每次访问时判断当前key是否存在于redis中,若存在则阻塞,若不存在则加入redis中同时获取redis锁。 但是java中获取key值,及向redis中塞入key以下是两个操作不是原子性的 1、 redis.get(key) 2、redis.set ...
分类:
其他好文 时间:
2020-02-07 16:37:10
阅读次数:
55