首页 > 其他分享 >GO数据类型(二)--字符串

GO数据类型(二)--字符串

时间:2023-05-29 14:31:31浏览次数:32  
标签:输出 abc string -- 数据类型 字符串 rune GO 格式

(文章目录)

转义字符

每一个都是一个字符,rune类型(int32)。可以作为单独字符使用,也可以作为字符串中的一个字符。

\a   U+0007 alert or bell
\b   U+0008 backspace
\f   U+000C form feed
\n   U+000A line feed or newline
\r   U+000D carriage return
\t   U+0009 horizontal tab
\v   U+000B vertical tab
\\   U+005C backslash
\'   U+0027 single quote (valid escape only within rune literals)
\"   U+0022 double quote (valid escape only within string literals)

字符串

使用双引号或反引号引起来的任意个字符。它是字面常量。

"abc测试" // 不能换行,换行需要借助\n
"abc\n测试" // 换行
`abc
 测试` // 等价下面的字符串
"abc\n\t测试"
`json:"name"` // 字符串里面如果有双引号,使用反引号定义方便
"json:\"name\"" // 和上一行等价
"abc" + "xyz" // 拼接

==注意:==反引号内不支持转义字符

格式化

  • %v 适合所有类型数据,调用数据的缺省打印格式
  • %+v对于结构体,会多打印出字段名
  • %#v 对于结构体,有更加详细的输出
  • %T 打印值的类型
  • %% 打印百分号本身
  • 整数
    • %b 二进制;%o 八进制;%O 八进制带0o前缀;%x 十六进制小写;%X16 进制大写
    • %U 把一个整数用Unicode格式打印。例如 fmt.Printf("%U, %x, %c\n", 27979, 27979,
    1. 输出 U+6D4B, 6d4b, 测
    • %c 把rune、byte的整型值用字符形式打印
    • %q 把一个整型当做Unicode字符输出,类似%c,不过在字符外面多了单引号。q的意思就是quote
  • 浮点数
    • %e、%E 科学计数法
    • %f、%F 小数表示法,最常用
    • %g 内部选择使用%e还是%f以简洁输出;%G 选择%E或%F
  • 字符串或字节切片
    • %s 字符串输出。如果是rune切片,需要string强制类型转换
    • %q 类似%s,外部加上双引号。q的意思就是quote
  • 指针
    • %p 十六进制地址
类型 说明 缺省格式符 常用格式符
bool 布尔型 %t %t
int/int8/int16/int32/int64/ 整型 %d %d、%b、%x
unit/unit8/uint16/uint32/uint64 无符号整型 %d, 如果使用%#v就等同%#x、%d、%b、%x
float32/float64 浮点型 %g %f、%e
complex64/complex128 复数 %g
byte 字节型 %c %c、%d
rune 字符型 %c %c、%d
string/[]byte 字符串 %s %s
uintptr 指针 %p %p
map slice channel error 引用 %v
slice 索引0元素地址 %p

特殊格式符写法

a, b, c, d := 100, 200, 300, 400
fmt.Printf("%d, %[2]v, %[1]d, %d", a, b, c, d)

可以认为中括号内写的是索引,是 Printf 的索引,索引0是格式字符串本身,1开始才是参数。如果写了 [n],之后默认就是n+1。

image.png

输出函数

  • 输出到标准输出
    • Print:使用缺省格式输出,空格分割
    • Println:使用缺省格式输出,空格分割,最后追加换行
    • Printf:按照指定的格式符输出
  • 输出到字符串,经常用来拼接字符串用
    • Sprint:相当于Print,不过输出为string
    • Sprintln:相当于Println,不过输出为string
    • Sprintf:相当于Printf,不过输出为string image.png

标签:输出,abc,string,--,数据类型,字符串,rune,GO,格式
From: https://blog.51cto.com/u_14661954/6370838

相关文章

  • 如何提升项目的本地构建效率?
    前言最近写H5的项目比较多,该项目从年龄上看着还算比较年轻......
  • K8S学习笔记
    K8S官网文档基本概念节点|Kubernetes(p2hp.com)使用kubectl来查看节点状态和其他细节信息:kubectldescribenode<节点名称>容器状态要检查Pod中容器的状态,你可以使用kubectldescribepod<pod名称>其输出中包含Pod中每个容器的状态。pod配置文件详解创建......
  • Rabbitmq安装
    我们在Centos8虚拟机中使用Docker来安装。 下载镜像 方式一:在线拉取 方式二:从本地加载下载tar镜像包,上传到虚拟机到某个目录: dockerimages 使用命令加载镜像 dockerload-imq.tar 安装MQ执行下面的命令来运行MQ容器: 解释dockerrun:这是运行Docker......
  • Docker php安装扩展步骤详解
    前言此篇,主要是演示docker-php-source,docker-php-ext-install,docker-php-enable-docker-configure这四个命令到底是用来干嘛的,它们在PHP容器中都做了哪些事情。很多人很不理解在Dockerfile中安装PHP扩展的时候总是出现这几个命令,本篇就就是为你揭开这些命令的神秘面纱而准......
  • Week1.图文并茂解释开源许可证GPL, BSD, MIT, Mozilla, Apache和LGPL的区别
    许可证由松到严排序:MITBSDApacheLGPLGPL图片源自乌克兰程序员PaulBagwell,由阮一峰汉化。MIT(MIT)来源于大学,MIT许可证是史上最为简洁和慷慨(permissive)的开源协议之一。作者只想保留版权,而无任何其他了限制.也就是说,你必须在你的发行版里包含原许可协议的声明,无论你......
  • django 中的collectstatic
    django中的collectstatic在Django中,"collectstatic"是一个管理命令,用于收集和复制项目中的静态文件到一个指定的静态文件目录,以便于部署。当你开发一个Django项目时,通常会使用许多静态文件,如CSS样式表、JavaScript文件、图像等。这些文件通常存储在每个应用程序的"static"目录......
  • 27th
    就上次保守数因为90625*90625超出了int范围,所以改用longlong #include<bits/stdc++.h>usingnamespacestd;intmain(){ for(longlongi=0;i<100000;i++){ intt=i; intcount=0;while(t!=0){t/=10;count++;//计算i是几位数}intk=pow(10,count);//截取后面的......
  • sockjs.js:1603 GET http://localhost/sockjs-node/info?t=1685340190468 net::ER
    vue项目报错不影响运行,但控制台看到这报错,属实不舒服 解决方法:进入\node_modules\sockjs-client\dist\sockjs.js注释1603行   刷新页面,没报错了 ......
  • Flip-Flop Hardening and Selection for Soft Error and Delay Fault Resilience
    Flip-FlopHardeningandSelectionforSoftErrorandDelayFaultResilience​​https://ieeexplore.ieee.org/document/5372275Thetraditionaltestmodelofgo/no-gotestingbeingquestionedbyincreasingdelayfaultmanifestationshasbecomeevenfurtherc......
  • @Validated注解的使用
    @Validated注解修饰controller的入参参数上入参参数内部使用其他细节注解进行判断看样例@ApiOperation(value="添加修改ump告警规则")@PostMapping("config")publicResultsaveOrUpdateConfig(@Validated@RequestBodyRadarScreenUmpConfigconfig){ radarScreenUmpS......