-
Java 问题排查技术共享
所属栏目:[语言] 日期:2021-12-06 热度:106
问题排查 可从三个方面入手 知识:有些问题,思考一下就有答案,就像传说中多隆那样,回忆下就知道第83行代码有问题~ 工具:当然不是每个人都能做到过目不忘,也有可能这代码完全不是你写的,这时就需要靠工具来定位问题 数据:程序运行时产生的数据,也能提[详细]
-
HashMap面试常见的六连问,你可以扛得住吗?
所属栏目:[语言] 日期:2021-12-06 热度:196
高手过招,招招致命 JDK1.8 中 HashMap 的底层实现,我相信大家都能说上来个 一二,底层数据结构 数组 + 链表(或红黑树) ,源码如下: /** * 数组 */ transient NodeK,V[] table; /** * 链表结构 */ static class NodeK,V implements Map.EntryK,V { final[详细]
-
一文带你搞明白 Python 的输入输出
所属栏目:[语言] 日期:2021-12-06 热度:104
为什么要输入和输出? 无论是从 一开始的hello world,还是前面的各种例子,基本都是些自说自话,展示类的代码片段。只有能够接收用户输入,根据输入代码生成结果,并输出到屏幕上展示出来,才算一个较为完整,简单的程序。 input输入函数 获取用户输入,保存[详细]
-
你,也许没完全搞懂 Java 泛型
所属栏目:[语言] 日期:2021-12-06 热度:193
今天我们来谈谈泛型。其实在初学的时候,我就对泛型有点蒙,因为看到有人说 Java 的泛型不是真的泛型,我搞不懂。 还有人说 Java 的泛型在实际运行时候会把类型给擦除了,我想着擦除是什么意思?为什么要擦除? 那把类型给擦除了为什么反射的时候还能得到泛型的[详细]
-
值得收藏的 C# 策划模式套路之三
所属栏目:[语言] 日期:2021-12-06 热度:172
行为设计模式跟前两种模式从内容上是有区别的。行为设计模式更关注对象之间的通信,以及职责和任务的交互。 一、责任链 名称起得很明显, 就是一个链式的责任或任务。为什么要链式呢?是因为请求要沿着多个处理程序往后传递。一个任务,可能要分很多步,又不想[详细]
-
Go 企业应用案例共享 Go 用于支付和奖励系统
所属栏目:[语言] 日期:2021-12-06 热度:187
Go 与其他编程语言的不同之处在于认知负载。你可以用更少的代码做更多的事情,这样可以更容易地推理和理解你最终编写的代码。 大多数 Go 代码最终看起来非常相似,因此,即使你使用的是全新的代码库,你也可以非常快速地上手并运行。 总的一句话,他们认为:G[详细]
-
Go 泛型 Maps 包正式释出,当下可用!
所属栏目:[语言] 日期:2021-12-06 热度:134
给大家带来一个关于泛型的新消息,那就是:在几天前,Go 泛型的配套标准库 golang.org/x/exp/maps 包已经正式提交,放出来了,可以使用。 cs.opensource.google 包代码如下: package maps func Keys[M ~map[K]V, K comparable, V any](m M) []K { r := make([详细]
-
Java 如何校验两个文件内容是同样的?
所属栏目:[语言] 日期:2021-12-06 热度:129
如果两个文件的内容相同,那么它们的摘要应该是相同的。这个原理能不能帮助我们鉴定两个文件是否相同呢? Java实现文件摘要 带着这个疑问,我写了一个文件摘要提取工具类: /** * 提取文件 checksum * * @param path 文件全路径 * @param algorithm 算法名 例[详细]
-
C# 使用 Npoi 操作Excel文件,你明白了吗?
所属栏目:[语言] 日期:2021-12-06 热度:160
C#使用NPOI操作excel 将DataTable数据导入到excel中 /// summary /// 将DataTable数据导入到excel中 /// /summary /// param name=data要导入的数据/param /// param name=isColumnWrittenDataTable的列名是否要导入/param /// param name=sheetName要导入的e[详细]
-
用 Python 搞一个按键记录器
所属栏目:[语言] 日期:2021-12-06 热度:113
按键记录器,就你在电脑上的每个按键,都会被记录下来,可以进行操作追踪,当然了,你在网站上输入的用户名密码等敏感信息也会被记录下来。用 Python 实现这个可以说非常简单,不过这玩意请不要用在别人的电脑上,哈哈。 教程 pynput 模块可以帮助我们实现,[详细]
-
C语言 | 函数执行成功时,return 1 还是return 0?
所属栏目:[语言] 日期:2021-11-06 热度:112
今天分享的内容是关于函数执行成功,返回0还是1的讨论~ 基本上,没有人会将大段的C语言代码全部塞入 main() 函数,更好的做法是按照复用率高,耦合性低的原则,尽可能的将代码拆分不同的功能模块,并封装成函数。C语言代码的组合千变万化,因此函数的功能可能[详细]
-
Python 处理 JSON 我选择 ujson 和 orjson
所属栏目:[语言] 日期:2021-11-06 热度:130
在 Python 使用用 json.dumps(data) 时突然发现特别慢,data 本身不大,但是一个包含很多元素的列表,所以促使本人寻找一个替代的 JSON 处理库。大概对比了一个 ujson(UtltraJSON), python-rapidjson(RapidJSON) 和 Python 自带的 json 库。还有一个 simplejs[详细]
-
在SQLite中插入10亿条Python VS Rust
所属栏目:[语言] 日期:2021-11-06 热度:177
在实际生活中,市场有这样的案例:写脚本来进行数据处理,比如说给数据库导入导出数据,这种任务一般来说最方便的方法是用python脚本,但是如果数据量比较大时候(比如上亿条)时候Python就会超级慢,看到无法忍受。在这种案例时候该怎么做呢,有一个外国老哥分[详细]
-
面试官提问什么是 Java 注解?
所属栏目:[语言] 日期:2021-11-06 热度:191
哈喽,我是狗哥。随着开发经验的累积,我越发觉得基础真的非常重要。比如:大部分框架 (如 Spring) 都使用了注解简化代码并提高编码的效率,掌握注解是一名 JAVA 程序员必备的技能。 但我发现很多工作 2、3 年的同学居然还没写过自定义注解,问起注解的原理也[详细]
-
【C++】内存中的字符串
所属栏目:[语言] 日期:2021-11-06 热度:190
前文 内存中的字符串类型 学习研究了Go的字符串在内存中的结构和数据类型。 文本是两年多前的一篇学习笔记,研究的是C++字符串在内存中的结构。 环境 1. 操作系统:Ubuntu 16.04。 2. 调试软件:GNU gdb (Ubuntu 7.11.1-0ubuntu1~16.5) 7.11.1。 3. 编译工具[详细]
-
一文讲清C/C++ Const/Const_Cast/Constexpr
所属栏目:[语言] 日期:2021-11-06 热度:170
很多人搞不清const、const_cast、constexpr的用法,稀里糊涂地用。一般而言,即使乱用,问题也不大,因为错大发了会崩,崩了自然会被修正,不崩自然也就没事。但作为一个有追求的专业程序员,自当闻过则喜,搞清楚弄明白。 一、const C语言的const用法 先讲co[详细]
-
详解Python集合Set,建议珍藏!!
所属栏目:[语言] 日期:2021-11-06 热度:156
大家好,我是Peter~ 在前面的几篇Python的文章中,我们介绍了Python的多种不同类型的对象:字符串、列表、元组、字典。它们有各自的特点: 字符串str:存在索引,字符串中的元素是可以重复的,元素是不可变,不能修改的 列表list:也能够进行索引和切片操作,[详细]
-
用了Stream后,代码反而越写越丑?
所属栏目:[语言] 日期:2021-11-06 热度:133
Java8的stream流,加上lambda表达式,可以让代码变短变美,已经得到了广泛的应用。我们在写一些复杂代码的时候,也有了更多的选择。 代码首先是给人看的,其次才是给机器执行的。代码写的是否简洁明了,是否写的漂亮,对后续的bug修复和功能扩展,意义重大。[详细]
-
C#基础 理解装箱与拆箱
所属栏目:[语言] 日期:2021-11-06 热度:176
前面我们讲到 .NET 平台支持的两大数据类型:值类型和引用类型。值类型比引用类型更高效,因为它没有指针引用,不用分配在托管堆中,也不用被 GC 回收。但有时候你可能偶尔需要将一种类型的变量表示为另一种类型的变量。为此,C# 提供了装箱和拆箱的机制。 1[详细]
-
Golang channel 使用结论
所属栏目:[语言] 日期:2021-11-06 热度:174
不同于传统的多线程并发模型使用共享内存来实现线程间通信的方式,golang 的哲学是通过 channel 进行协程 (goroutine) 之间的通信来实现数据共享: Do not communicate by sharing memory; instead, share memory by communicating. 这种方式的优点是通过提供[详细]
-
谈谈 Jmeter 如何并发执行 Python 脚本
所属栏目:[语言] 日期:2021-11-06 热度:198
1. 前言 大家好,我是安果! 最近有小伙伴后台给我留言,说自己用 Django 写了一个大文件上传的 Api 接口,现在想本地检验一下接口并发的稳定性,问我有没有好的方案 本篇文章以文件上传为例,聊聊 Jmeter 并发执行 Python 脚本的完整流程 2. Python 实现文件[详细]
-
用Python解析大连景点,告诉你哪些景点性价比高
所属栏目:[语言] 日期:2021-11-06 热度:146
大家好,我是志斌~ 再过几天,志斌就要去大连开始为期三年的读研生活啦,当然在读书学习的同时,也要去体验一下魅力之都的魅力,所以志斌用Python爬取了去哪儿网上大连景点的相关数据,包括景点名称、城区、热度、价格、月销量等数据,对数据进行可视化并作简[详细]
-
强!8个Python优化提速的小方法
所属栏目:[语言] 日期:2021-11-06 热度:162
Python 是一种脚本语言,相比 C/C++ 这样的编译语言,在效率和性能方面存在一些不足。但是,有很多时候,Python 的效率并没有想象中的那么夸张。本文对一些 Python 代码加速运行的技巧进行整理。 0. 代码优化原则 本文会介绍不少的 Python 代码加速运行的技巧[详细]
-
Dotnet 6.0,你值得获取
所属栏目:[语言] 日期:2021-11-06 热度:191
最近在研究 Dotnet 6.0 C# 10,一个字 - 爽! 下面,分享一下新的一些特性给大家。 一、编程语言方面 编程语言升到 C# 10,新东西不少。 1. 属性的 required 看一个简单的例子: public class User { public string name { get; set; } public DateTime dateOf[详细]
-
深入分析 Dubbo 3.0 服务端暴露全流程
所属栏目:[语言] 日期:2021-11-06 热度:54
背景 随着云原生时代的到来,Dubbo 3.0 的一个很重要的目标就是全面拥抱云原生。正因如此,Dubbo 3.0 为了能够更好的适配云原生,将原来的接口级服务发现机制演进为应用级服务发现机制。 基于应用级服务发现机制,Dubbo 3.0 能大幅降低框架带来的额外资源消耗[详细]