representing zones time go

go的类型断言

# 0 简介 在 Go 中,一个接口(interface)是一组方法签名的集合。具体类型(struct 等)可以实现这些方法,从而满足接口的要求。通过这种方式,一个对象的类型可以被表示为一个或多个接口类型。 1. 类型转换是基于接口实现的: 在进行类型转换时,被转换的对象必须是实现了目标类型所要求的 ......
类型

Go Web项目结构 + 基础代码

# Go Web工程 下面是项目的包图,可以通过包图来理清项目包的结构。 # Go Web工程 下面是项目的包图,可以通过包图来理清项目包的结构。 ![image](https://img2023.cnblogs.com/blog/2146100/202308/2146100-20230825210 ......
结构 代码 基础 项目 Web

go单元测试

[toc] ## go test ### 介绍 ```markdown 1.go test 命令会自动执行_test.go结尾的源码内以Test开头的函数 生成可测试用的执行文件 2.不需要main函数作为入口函数 3.不会参与到正常源码编译 4.执行go test 需要切换目录到存在该文件的同级目 ......
单元

Go-函数

#1 函数的概念 在golang语言中为完成某一功能的程序指令(语句、代码)的集合称为函数;在golang中,函数分为自定义函数、系统函数 #2 函数的基本语法 ``` func 函数名(形参列表) (返回值类型列表) { 函数体 return 返回值列表 } //形参列表 表示函数的输入 //函数 ......
函数 Go

go开发环境

[toc] ## Go环境 ### [环境下载安装](环境下载安装) ```shell # 下载地址:https://golang.google.cn/dl/ windows: go1.20.5.windows-amd64.msi:安装版 安装流程中可添加环境变量全局使用 go1.20.5.wind ......
环境

Go语言中的切片nil

这句话是关于 Go 语言中数据结构的空值检查方法。 在 Go 语言中,有些数据类型(如切片、映射和通道)在其零值状态下并不是`nil`。对于这些类型,即使你分配了一个新的空结构(例如,一个没有元素的切片),它们的内部指针可能不为`nil`。 举一个例子,当我们声明一个新的空切片时: ```go va ......
语言 nil

简单对比一下 C 与 Go 两种语言

以下内容为本人的学习笔记,如需要转载,请声明原文链接[ 微信公众号「ENG八戒」](https://mp.weixin.qq.com/s/U6jIT837x5Yxe6Ev1aMDsA)[https://mp.weixin.qq.com/s/U6jIT837x5Yxe6Ev1aMDsA](https: ......
语言 Go

Go race数据竞争检测

对同一内存的竞争读写,会导致出现数据错乱,是多进程/线程编码中的常见问题。 go中提供了race工具协助识别代码中的数据竞争问题。使用起来也非常方便,设计编译的操作时加上-race即可: go test -race xxx go run -race xxx go build -race xxx go ......
数据 race Go

Go每日一库之 vegeta — http压力测试工具库

今天给大家推荐的是一个对HTTP接口做压力测试的工具:vegeta。 项目地址:https://github.com/tsenart/vegeta 一、特点 命令行和Go第三方库都可以使用 命令行使用UNIX风格设计 可扩展多种压测报告形式 对于分布式测试也非常简单易用 易安装、易使用 二、安装 2 ......
测试工具 压力 工具 vegeta http

Go语言字典(map)的使用

[toc] ### 3.字典(map)的使用 #### 3.1 字典的初始化方式1: ```go package main import "fmt" func main() { var scoreMap = map[string]float32{ "语文": 90.5, "数学": 88.5, "英 ......
字典 语言 map

Go语言数组的使用

[toc] ### 1.数组的使用 #### 1.1 数组的定义方式1: ```go // 1.数组的定义 package main import "fmt" func main() { var arr [3]string arr[0] = "A" arr[1] = "B" arr[2] = "C" ......
数组 语言

Go语言切片的使用

[toc] ### 2.切片的使用 #### 2.1 切片的定义方式1: ```go package main import "fmt" func main() { var slice []string slice = append(slice, "A") slice = append(slice, ......
语言

go.mod 浅谈理解

# go.mod 对于上次接触 `golang` 这门语言还是在上次了,最近对 `zig` 比较感兴趣,而突然折腾回 `golang` 的时候发现这玩意在`1.1.1`版本更新了一个叫`go.mod`的东西。 `go.mod` 是Go语言的官方包管理工具,用于解决之前没有地方记录依赖包具体版本的问题 ......
mod go

2023-08-24:请用go语言编写。给定一个长度为n的数组arr, 现在你有一次机会, 将其中连续的K个数全修改成任意一个值, 请你计算如何修改可以使修改后的数 列的最长不下降子序列最长。 请输出

2023-08-24:请用go语言编写。给定一个长度为n的数组arr, 现在你有一次机会, 将其中连续的K个数全修改成任意一个值, 请你计算如何修改可以使修改后的数 列的最长不下降子序列最长。 请输出这个最长的长度。 最长不下降子序列:子序列中的每个数不小于在它之前的数。 1 = n { fmt.P ......
数组 序列 可以使 长度 个数

RUST 和 GO 如何管理它们的内存

# RUST 和 GO 如何管理它们的内存 ## Go 中的内存管理 Go 中的内存不会在缓存键被驱逐时立即释放。 相反,垃圾收集器会经常运行以发现任何没有引用的内存并释放它。 换句话说,内存会一直挂起,直到垃圾收集器可以评估它是否真正不再使用,而不是在不再需要时立即释放。 Go 必须付出的努力来找 ......
内存 RUST GO

Go语言数字字面量

在Go语言中,数字字面量可以用以下方式表示: 1. **二进制(Binary)**: 使用 `0b` 或 `0B` 前缀。 例如: ```go b := 0b1010 // 10 in decimal ``` 注意: 这是在Go 1.13及更高版本中引入的。 2. **八进制(Octal)**: 使 ......
字面 语言 数字

rust vs GO:性能

8 月 7 日,Rust 基金会发布了 2022 年度 Rust 调查报告结果,报告显示 Rust 采用率不断提高,超过 90% 的调查受访者表示自己是 Rust 用户;29.7% 的受访者表示,他们在工作中的大部分编码工作都使用 Rust,比上一年显着增加了 51.8%。 毋庸置疑,Rust 以其 ......
性能 rust vs

go初始化项目

The error message suggests that your project is not initialized as a Go module. To resolve this issue and specify the module path, you can follow thes ......
项目

go-idea集成配置

现把go-idea集成配置记录如下 一、go环境配置 详细配置请点击 二、idea准备 由于本环境在deepin里面,因此idea安装的版本:IntelliJ IDEA 2022.2.4 (Ultimate Edition);idea授权注册,此处省略 三、go集成 安装go插件 新建go项目 跟着 ......
go-idea idea go

go-deepin安装配置

近日基于deepin实现了go的开发环境构建,现在将环境构建过程和主要配置记录如下: 一、资源准备: 1.1.OS deepin 1.2.GO 下载地址:https://studygolang.com/dl 下载版本:本次选择go1.20.7.linux-amd64.tar.gz 二、安装配置 2. ......
go-deepin deepin go

Go语言中的sync包

Go 语言的 `sync` 包提供了基本的同步原语,如互斥锁和条件变量。它被设计用来协调多个 goroutine 之间的工作,以便在访问共享资源或完成某些任务时不会发生竞争条件或其他并发相关的问题。 以下是 `sync` 包中一些关键的组件和它们的用途: 1. **Mutex(互斥锁)**: - ` ......
语言 sync

Go语言中的copy函数

Go 的内置 `copy` 函数用于从一个切片复制元素到另一个切片。其基本语法如下: ```go n := copy(dst, src) ``` 其中,`dst` 是目标切片,`src` 是源切片,函数返回复制的元素数量。 **关于 `copy` 函数的一些关键点**: 1. **元素数量**: ` ......
函数 语言 copy

Go-流程控制

在golang语言中有丰富的流程控制方面的功能。包括条件控制语句、循环语句、跳转语句等 #1 if条件控制语句 ##1.1 语法 ``` if condition { statement(s) } else if condition { statement(s) } else { statement ......
流程 Go

【成果展示】go-astilectron实现的算法工具

![](https://img2023.cnblogs.com/blog/137928/202308/137928-20230823182207740-2137674912.png) 仓库地址: https://github.com/go-astilectron-demo-crypt_tools ......

Go 并发编程 - runtime 协程调度(三)

阅读本文前,你需要掌握 Goroutine、Channel。本文将介绍 Golang 的 runtime 的协程调度原理和 runtime 包的一些函数的使用。 ......
runtime Go

Go 并发编程 - 并发安全(二)

阅读本文前,你需要掌握 Goroutine、Channel。本文将介绍如何使用 sync 和 atomic 保证 Golang 的并发安全。 ......
Go

Go 并发编程 - Goroutine 基础 (一)

Goroutine 是 Golang 协程的实现。相比于其他语言,Goroutine 更加轻量,更加简单。Goroutine 是学习 Golang 必须掌握的知识。本文介绍 Goroutine 的基础知识,包含 基础语法使用和 Channel。 ......
Goroutine 基础 Go

slice 切片数组测试记录【GO 基础】

〇、测试前准备 本文是在 GO 环境下测试记录系列之一,GO 基本环境部署步骤将略过,直接上代码。 下面是常用命令:【初始化 + 运行 + 编译】 // {GOPATH} 环境变量值, example 项目文件夹名称 {GOPATH}\src\example> // 运行代码 // xxx.go 为 ......
数组 基础 slice

GO、KO、EGGNOG、RXN、PFAM和Level4EC

这些数据库在生物学和分子生物学领域中发挥着关键作用,用于注释和分类基因和蛋白质功能,以及理解生物系统的运作方式。 Gene Ontology(GO): 简介: GO是一种用于描述基因和蛋白质功能的标准化分类体系。它将基因和蛋白质的功能划分为分子功能、细胞组分和生物学过程三个大类,每个类别都有多个子类 ......
Level4EC EGGNOG Level4 Level PFAM

[LeetCode][121]best-time-to-buy-and-sell-stock

# Content You are given an array prices where prices[i] is the price of a given stock on the ith day. You want to maximize your profit by choosing a s ......