- 博客(30)
- 收藏
- 关注
原创 Go入门(八)-- 运算符
如果两边的操作数有一个 True,则为 True,否则为 False。如果两边的操作数都是 True,则为 True,否则为 False。参与运算的两数各对应的二进位相异或,当两对应的二进位相异时,结果为1。“a<<b”是把a的各二进位全部左移b位,高位丢弃,低位补0。如果条件为 True,则为 False,否则为 True。“a>>b”是把a的各二进位全部右移b位。参与运算的两数各对应的二进位相或。(两位有一个为1就为1)参与运算的两数各对应的二进位相与。简单的赋值运算符,将一个表达式的值赋给一个左值。
2023-08-22 15:30:53
183
原创 Go入门(六)-- 字典Map
语法var 变量名 map[KeyType]ValueTypeKeyType:表示键的类型ValueType:表示键对应的值的类型map 类型的变量默认初始值为 nil,需要使用 make() 函数来分配内存语法其中 cap 表示 map 的容量,该参数虽然不是必须的,但是我们应该在初始化 map 的时候就为其指定一个合适的容量。
2023-08-22 14:20:20
210
原创 Go入门(五)-- 数组切片Slice
切片:切片是数组的一个引用,因此切片是引用类型。但自身是结构体,值拷贝传递切片的长度可以改变:切片是一个可变数组切片的遍历方式和数组一样,可以用len()求长度。表示可用元素数量,读写操作不能超过该限制cap可以求出slice最大扩张容量,不能超出数组限制。0 <= len(slice) <= len(array),其中array是slice引用的数组切片的定义:var 变量名 []类型,比如 var str []string var arr []int。
2023-08-22 14:16:50
326
原创 Go入门(四)-- 数组Array
数组是 Go 语言中最常用的数据结构之一。顾名思义,数组就是指一系列同一类型数据的集合。数组中包含的每个数据被称为数组元素(element),一个数组包含的元素个数被称为数组长度。Golang Array 和以往认知的数组有很大不同。panic。
2023-08-20 22:45:25
282
原创 Go入门(三)-- 字符串
len(str)求长度+或fmt.Sprintf拼接字符串分割判断是否包含前缀/后缀判断子串出现的位置join操作更多的字符串操作,请参考标准库。
2023-08-20 22:09:15
624
原创 Go入门(一)-- 变量和常量
Go 语言中通过const关键字定义常量,常量尽量全部大写,若多个单词使用下划线形式定义。// 单个常量声明// 多个常量同时声明const (E = 2.7182GOOD_NAME = "小米"const同时声明多个常量时,如果忽略了值则表示和上面一行的值相同。例如const (n1 = 100n2n3上面示例中,常量n1、n2、n3的值都是100常量定义的右值也可以是编译器运算的常量表达式,比如注意常量类型只可以定义 bool、数值(整数、浮点数和复数)和字符串。
2023-08-18 22:18:02
138
原创 使用Air热加载Go程序(windows环境下)
在使用 Go 语言的 gin 框架在本地做开发时,经常会在变更代码之后重新编译运行整个程序,开发起来效率很低。
2023-08-07 15:26:18
432
原创 Golang 安装grpc和proto
grpc 是一个高性能、开源和通用的 RPC 框架protocol buffer 是 Google 出品的一种轻量 & 高效的结构化数据存储格式,性能比 JSON、XMS 强很多。微服务架构中,由于每个服务对应的代码库是独立运行的,无法直接调用,彼此间的通信是个大问题。grpc 可以实现微服务,将大的项目拆分为多个小且独立的业务模块,也就是服务,各服务间使用高效的 protobuf 协议进行 RPC 调用,grpc 默认使用 protocol buffers。
2023-08-05 23:08:05
434
1
原创 虚拟机搭建LNMP环境
前言本人开发一直使用的是Windows系统(别问,问就是买不起mac),虽然微软推出了WSL(适用于 Linux 的 Windows 子系统),虽说Windows+WSL给开发者提供了便利,但是呢,相比于传统的Linux,又有很多不足之处。虚拟机才是永远滴神。环境准备centos7虚拟机可根据自己的习惯安装,本人用的是vagrant安装LNMP我这边使用的是LNMP一键安装包(当然,也可以自己编译安装,但是本人懒),简单实用。下载lnmp安装包并安装wget http..
2022-05-02 20:59:52
3709
原创 PHP 生成base64二维码
配置composer全局1.在cmd或shell输入命令php -r " eval('?>' .file_get_contents('https://getcomposer.org/installer'));"2.将生成的composer.phar文件移动到对应的php版本下面3.在同级下面新建个composer.txt,在里面输入@ECHO OFFphp "%~dp0composer.phar" %*然后将该文件的后缀改成.bat清楚composer缓存http
2022-04-12 22:06:44
1669
1
原创 浅谈vue组件
组件(Component) 是Vue最核心的功能,也是整个框架最精彩的地方,当然也是最难掌握的。(所有实例代码基于vue.js^2.*)一、为什么要使用组件vue组件的作用书提高重用性,让代码可复用二、组件用法组件需要注册才能使用。组件有全局注册和局部注册两种方式。全局注册Vue.component("test", { data() { return { message: "message" ...
2022-03-10 22:25:32
1095
原创 Vue2 使用swiper
前言最近用vue2使用swiper插件遇到了一堆坑,也是因为本人技术的原因。网上搜了很多解决方案,但都没有解决问题,而且官方给出的文档版本太混乱了,版本高的都使用ts了开发环境vue:^2.6.11swiper:^5.4.5vue-awesome-swiper:^3.1.3刚开始没有指定swiper和swiper的版本,使用的时候报了很多错。npm i swiper@5.4.5 vue-awesome-swiper@3.1.3 --save-dev代码示例导入组件和css文件imp
2022-03-08 12:26:51
4580
原创 响应式布局--媒体查询
介绍响应式布局,简而言之,就是一个网站能够兼容多个终端—而不是每个终端做一个特定的版本。这个概念是为解决移动互联网浏览而诞生的。其目的是为用户提供更加舒适的界面和更好的用户体验。优缺点优点面对不同分辨率设备灵活性强能够快捷解决多设备显示适应问题缺点兼容各种设备工作量大,效率低下代码累赘,会出现隐藏无用的元素,加载时间加长基本实现CSS中的Media Query(媒体查询):设备宽高:device-width,device-height渲染窗口的宽和高:width,heigh
2021-12-07 13:18:07
375
原创 Web Api--Web Storage本地存储
Web Storage 是什么?Web Storage是HTML5中解决本地存储的方案之一。Web Storage功能就是在Web上储存数据的功能。早点时候,储存数据在cookie上,但为什么出现Web Stroage呢?Cookie 的缺点:数据大小:作为存储容器,cookie的大小限制在4KB左右安全性问题:由于在HTTP请求中的cookie是明文传递的(HTTPS不是),带来的安全性还是很大的网络负担:cookie会被附加在每个HTTP请求中,在HttpRequest和HttpRespon
2021-12-04 19:43:24
719
原创 JS实现阶乘
介绍阶乘:一个非负整数n的阶乘是所有小于或等于 n的正整数之积,并且0的阶乘为1。自然数n的阶乘写作n!即n!=1×2×3×…×(n-1)×n。阶乘亦可以递归方式定义:0!=1,n!=(n-1)!×n代码示例这边就不检测n是否为非负整数了<script> // 实现阶乘 /** * 方法一 * 使用while循环实现 */ function factorial(n) { // 查看执行速度 cons
2021-10-09 00:03:22
1360
原创 JS寻找喇叭花数
介绍喇叭花数是一个三位数字,其每位数字的阶乘之和等于数字本身,即abc = a! + b! + c!代码示例(JS穷举法)<script> // 获取一个数字的阶乘 function factorial(n) { //累乘器 var result = 1; for (var i = 1; i <= n; i++) { result *= i; } return re
2021-08-11 23:23:12
525
原创 JS实现冒泡排序
介绍冒泡排序(Bubble Sort),是一种最基础的交换排序。这个算法的名字由来是因为越小的元素会经由交换慢慢“浮”到数列的顶端(升序或降序排列),就如同碳酸饮料中二氧化碳的气泡最终会上浮到顶端一样,故名“冒泡排序”。它重复地走访过要排序的元素列,依次比较两个相邻的元素,如果顺序(如从大到小、首字母从Z到A)错误就把他们交换过来。走访元素的工作是重复地进行直到没有相邻元素需要交换,也就是说该元素列已经排序完成。原理比较相邻的元素,如果第一个比第二个大,就交换他们两个代码实现(JS)<s
2021-08-09 13:05:43
256
原创 JS循环的lable语句
介绍JS循环中特有的lable。一个 label 提供了一个让你在程序中其他位置引用它的标识符。例如,你可以用 label 标识一个循环, 然后使用 break 或者 continue 来指出程序是否该停止循环还是继续循环。使用场景label语句只在以下循环种使用:for 语句do…while 语句while 语句for…in 语句for…of 语句需要配合break 或者 continue使用应用实例寻找100以内的质数<script> // 寻找100以内
2021-08-08 20:42:59
309
原创 莱布尼茨级数计算π
莱布尼兹级数右边的展式是一个无穷级数,被称为莱布尼茨级数,这个级数收敛到 π代码实现(JS)<script> // 通过莱布尼兹级数计算Π function getLeibnizSeries(number) { var result = 1; for (let i = 1; i <= number; i++) { result += Math.pow(-1, i) * 1 / (2 * i + 1);
2021-08-08 18:15:52
4770
原创 水仙花算法
介绍水仙花数(narcissistic number),narcissistic 本意是"自恋的;自我陶醉的;自我欣赏的"。在希腊神话中,貌美青年那喀索斯(narcissus)爱上了自己在水中的倒影,他死后化作水仙花,此花即因之命名。所以,水仙花数也被称为超完全数字不变数(pluperfect digital invariant, PPDI)、自恋数、自幂数、阿姆斯壮数或阿姆斯特朗数(Armstrong number)。水仙花数是指一个 3 位数,它的每个位上的数字的 3次幂之和等于它本身(例如:1
2021-08-08 12:40:41
1396
原创 vue-cli4.x 搭建Vue项目及初始化
一 安装环境vue-cli 4.5.12node.js 14.15.1二 安装Node.js下载地址:https://nodejs.org/en/安装完成后,查看node版本node -v三 安装vue-cli全局安装vue-clinpm install(i) -g @vue/clinpm 是使用国外资源,下载会很慢,可以使用国内淘宝镜像下载安装cnpmnpm install -g cnpm -registry=https:://registry.npm.taobao.o
2021-04-17 09:54:16
427
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人