搜索结果
查询Tags标签: capacity,共有 68条记录-
Python custom modify the __add__ method All In One
Python custom modify the add method All In OnePython 改写 __add__ 类方法"""# class Juice: # def __init__(self, name, capacity): # self.name = name # self.capacity = capacity# def __str__(self): # return (…
2022/8/22 1:25:21 人评论 次浏览 -
V8中的快慢数组(附源码、图文更易理解
接上一篇掘金 V8 中的快慢属性,本篇分析V8 中的快慢数组,了解数组全填充还是带孔、快慢数组、快慢转化、动态扩缩容等等。其实很多语言底层都采用类似的处理方式,比如:Golang中切片的append操作就涉及扩容处理。
2022/8/4 14:22:59 人评论 次浏览 -
ByteBuffer 字节缓冲区
HeapByteBuffer 在jvm堆上面的一个buffer,底层的本质是一个数组由于内容维护在jvm里,所以把内容写进buffer里速度会快些;并且,可以更容易回收DirectByteBuffer 底层的数据其实是维护在操作系统的内存中,而不是jvm里,DirectByteBuffer里维护了一个引用address指向了数…
2022/7/7 23:23:18 人评论 次浏览 -
java集合 总结篇
ListArrayList Vector LinkList SetHashSet TreeSet LinkedHashSet Queue Map 大方向上,HashMap 里面是一个数组,然后数组中每个元素是一个单向链表。上图中,每个绿色的实体是嵌套类 Entry 的实例,Entry 包含四个属性:key, value, hash 值和用于单向链表的 next。cap…
2022/6/27 1:25:54 人评论 次浏览 -
Java NIO Buffer
1、概述 Java NIO中的Buffer用于和NIO Channel进行交互。数据是从通道读入缓冲区,从缓冲区写入到通道中的。 缓冲区本质上是一块可以写入数据,然后可以从中读取数据的内存。这块内存被包装成NIO Buffer对象,并提供了一组方法,用来方便的访问该块内存。 所有Buffer都继…
2022/6/17 1:22:39 人评论 次浏览 -
C++ primer 5th(中文版)勘误
\(P_{158}\) “末位大于 3” 改为 “末位大于等于 3”\(P_{302}\)\(P_{319}\) // 添加元素用光多余容量 while (ivec.size() != ivec.capacity())ivec.push_back(0); // capacity 应该未改变,size 和 capacity 不相等 ... ...将注释部分 “size 和 capacity 不相等” 改为…
2022/5/24 1:21:22 人评论 次浏览 -
.net源码解读之List<T>
我们知道,List与数组的区别是,可以Add元素,但是这是如何实现的呢? 翻看源码,解开面纱,发现List的内部实现,就是使用数组实现的。 List的源码地址:https://referencesource.microsoft.com/#mscorlib/system/collections/generic/list.cs,cf7f4095e4de7646 部分源码…
2022/2/11 1:43:45 人评论 次浏览 -
C++ 开发中,使用类模板完成自定义数组
需求描述: 通过使用 C++ 中类模板的特性,实现一个能够存储任意类型的数组。可以通过在尾部追加的方式在数组中完成数据传入,且可以通过尾部操作删除数组最后一个元素。完整代码如下: #include<iostream> #include<string>using namespace std;template<…
2022/2/9 20:12:46 人评论 次浏览 -
数组类的封装(代码实现) ——c++
(强换训练)数组类封装 通过代码实现数组类的封装: 这个时候如果想访问数组的元素,那么就得调用数组的接口 #pragma once #define _CRT_SECURE_NO_WARNINGS 1 #include<iostream>using namespace std;class myarray { public:myarray()//默认构造 可以给100容量{…
2022/2/8 11:42:33 人评论 次浏览 -
手写lru算法之巧用linkedhashmap代码实现
public class LRUCacheDemo<K,V> extends LinkedHashMap<K,V> {private int capacity;public LRUCacheDemo(int capacity) {//true表示访问顺序:[4,3,5]//false表示插入顺序:[3,4,5]super(capacity,0.75F,true);this.capacity = capacity;}/*** 重写此方法*…
2022/2/5 20:43:00 人评论 次浏览 -
【java源码一带一路系列】之HashMap.putAll()
本文以jdk1.8中HashMap.putAll()方法为切入点,分析其中难理解、有价值的源码片段(类似ctrl+鼠标左键查看的源码过程)。✈观光线路图:putAll() –> putMapEntries() –> tableSizeFor() –> resize() –> hash() –> putVal()… 将涉及到的源码全局变量…
2022/1/26 22:05:55 人评论 次浏览 -
C++写一个Array
C++写一个Array 写一个Array: #include <iostream> using namespace std;template<class T> class array {private:int capacity;int size = 0;T* head;public:array(int);void push(T);int get_len();T* get_head();T* get_idx(int); };template<class T…
2022/1/23 1:05:10 人评论 次浏览 -
java代码学习(八) ———URLDNS链条
直接进去ysoserial的URLDNS利用链条,可以看到主要是一个getObject的方法。 使用了URLStreamHandler类来进行网络连接和获取地址。 new了一个hashmap的对象,看hashmap的readobject方法。 private void readObject(java.io.ObjectInputStream s)throws IOException, Class…
2022/1/17 17:04:14 人评论 次浏览 -
java代码学习(八) ———URLDNS链条
直接进去ysoserial的URLDNS利用链条,可以看到主要是一个getObject的方法。 使用了URLStreamHandler类来进行网络连接和获取地址。 new了一个hashmap的对象,看hashmap的readobject方法。 private void readObject(java.io.ObjectInputStream s)throws IOException, Class…
2022/1/17 17:04:14 人评论 次浏览 -
C++ 队列(1):静态数组实现
寒假来了,把这学期学习的东西总结一下吧。 队列的基本性质就不说了,主要讲一下在静态数组实现中的入队出队操作以及最基本的构造函数等。 目录 一、主要问题: 二、代码实现: 2.1 概述: 2.2 构造函数: 2.3 析构函数: 2.4 判空: 2.5 判满: 2.6 入队: 2.7 出队:一…
2022/1/14 17:04:55 人评论 次浏览