Rumah >pembangunan bahagian belakang >Golang >Penjelasan terperinci tentang ruang letak pemformatan Golang

Penjelasan terperinci tentang ruang letak pemformatan Golang

WBOY
WBOYasal
2024-03-13 08:24:04502semak imbas

Penjelasan terperinci tentang ruang letak pemformatan Golang

Penjelasan terperinci tentang ruang letak berformat Golang

Dalam pengaturcaraan Golang, pemformatan rentetan ialah operasi biasa, yang boleh digunakan untuk memformatkan pelbagai jenis data ke dalam output rentetan. Apabila memformat rentetan, ruang letak memainkan peranan penting, yang melaluinya format output data boleh ditentukan. Artikel ini akan memperkenalkan secara terperinci beberapa ruang letak pemformatan yang biasa digunakan di Golang dan memberikan contoh kod khusus untuk rujukan anda.

1. Pemegang tempat pemformatan asas

Di Golang, pemegang tempat pemformatan asas yang biasa digunakan adalah seperti berikut:

  • %v: Format lalai %v:默认格式
  • %+v:对结构体格式化时添加字段名
  • %#v:给值添加类型信息
  • %T:输出值的类型
  • %%:百分号

下面是一个简单的示例代码,演示了基本的格式化占位符的使用:

package main

import "fmt"

type Person struct {
    Name string
    Age  int
}

func main() {
    p := Person{Name: "Alice", Age: 30}
    
    fmt.Printf("Person: %+v
", p)
    fmt.Printf("Type of p: %T
", p)
}

运行上述代码,输出结果如下:

Person: {Name:Alice Age:30}
Type of p: main.Person

2. 宽度与精度

在格式化数字时,可以使用宽度(width)和精度(precision)来控制输出的格式。以下是一些常用的占位符形式:

  • %f:浮点数格式化
  • %t:布尔值格式化
  • %b:二进制格式化
  • %d:十进制格式化
  • %o:八进制格式化
  • %x:十六进制格式化

下面的示例演示了如何使用宽度和精度对浮点数进行格式化:

package main

import "fmt"

func main() {
    f := 3.14159
    
    fmt.Printf("Default format: %f
", f)
    fmt.Printf("Width and precision: %5.2f
", f)
}

运行上面的代码,输出结果如下:

Default format: 3.141590
Width and precision:  3.14

3. 字符串格式化

除了数字和结构体之外,Golang 也可以格式化字符串。以下是一些常用的字符串格式化占位符:

  • %s:字符串
  • %q:带双引号的字符串
  • %x:十六进制字符串
  • %c:字符(Unicode码点)
  • %p
  • %+v : Tambahkan nama medan semasa memformat struktur

%#v: Tambahkan maklumat jenis pada nilai

%T: Output jenis nilai

% %: Tanda peratus

Berikut ialah kod sampel ringkas yang menunjukkan penggunaan ruang letak pemformatan asas:

package main

import "fmt"

func main() {
    str := "Hello, 世界"
    
    fmt.Printf("String: %s
", str)
    fmt.Printf("Quoted string: %q
", str)
    fmt.Printf("Hex encoding: %x
", str)
}

Jalankan kod di atas, output adalah seperti berikut: 🎜
String: Hello, 世界
Quoted string: "Hello, 世界"
Hex encoding: 48656c6c6f2c20e4b896e7958c
🎜 2. Lebar dan ketepatan🎜 🎜Apabila memformat nombor, anda boleh menggunakan lebar dan ketepatan untuk mengawal format output. Berikut ialah beberapa borang pemegang tempat yang biasa digunakan: 🎜🎜🎜%f: Pemformatan titik terapung 🎜🎜%t: Pemformatan Boolean 🎜🎜%b : Pemformatan binari 🎜🎜%d: Pemformatan perpuluhan 🎜🎜%o: Pemformatan perlapanan 🎜🎜%x: Pemformatan Heksadesimal 🎜🎜🎜Yang berikut contoh menunjukkan cara memformat nombor titik terapung menggunakan lebar dan ketepatan: 🎜rrreee🎜Menjalankan kod di atas, output adalah seperti berikut: 🎜rrreee🎜3 Pemformatan Rentetan🎜🎜Pengecualian Selain nombor dan struktur, Golang juga boleh memformat rentetan. . Berikut ialah beberapa ruang letak pemformatan rentetan yang biasa digunakan: 🎜🎜🎜%s: rentetan 🎜🎜%q: rentetan dengan petikan berganda 🎜🎜%x: Rentetan perenambelasan 🎜🎜%c: Aksara (titik kod Unikod) 🎜🎜%p: Penunjuk 🎜🎜🎜 di bawah Contoh menunjukkan cara memformat rentetan: 🎜rrreee 🎜Jalankan kod di atas, outputnya adalah seperti berikut: 🎜rrreee🎜Ringkasan🎜🎜Artikel ini memperkenalkan beberapa ruang letak pemformatan yang biasa digunakan di Golang, termasuk ruang letak asas , kawalan lebar dan ketepatan serta pemformatan rentetan. Dengan menggunakan ruang letak berformat secara rasional, data output boleh dibuat dengan lebih jelas. Pembaca boleh menggunakan ruang letak ini secara fleksibel mengikut keperluan sebenar untuk meningkatkan kecekapan dalam kerja pengaturcaraan Golang harian. 🎜🎜Saya berharap kandungan artikel ini akan membantu semua orang, dan saya juga berharap pembaca dapat memahami dan menguasai operasi pemformatan Golang yang lebih mendalam secara praktikal. 🎜

Atas ialah kandungan terperinci Penjelasan terperinci tentang ruang letak pemformatan Golang. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn