Rumah > pembangunan bahagian belakang > Golang > ## Bagaimanakah Saya Boleh Menukar Aksara Kecil kepada Huruf Besar dalam Rentetan Go?

## Bagaimanakah Saya Boleh Menukar Aksara Kecil kepada Huruf Besar dalam Rentetan Go?

Barbara Streisand
Lepaskan: 2024-10-26 02:02:02
asal
748 orang telah melayarinya

## How Can I Convert Lowercase Characters to Uppercase in a Go String?

Mengubah Rentetan dalam Go

S: Saya mahu menukar aksara huruf kecil kepada huruf besar dalam rentetan, tetapi Go melemparkan ralat: "cannot assign to new_str[i] ". Bagaimanakah saya boleh mencapai ini?

J: Memahami Ketidakbolehubahan Go String

Dalam Go, rentetan tidak boleh diubah, bermakna setelah dibuat, kandungannya tidak boleh diubah suai. Tingkah laku ini sejajar dengan Spesifikasi Bahasa Go, yang menyatakan:

"Rentetan tidak boleh diubah: setelah dibuat, adalah mustahil untuk menukar kandungan rentetan."

J: Mengatasi Ketidakbolehubahan Rentetan

Untuk mengubah suai rentetan dalam Go, anda mempunyai dua pilihan:

  1. Hantar rentetan ke []hirisan bait dan ubah hirisan.
  2. Buat yang baharu rentetan dengan pengubahsuaian yang diingini.

J: Mengubah Rentetan Menggunakan []Kepingan bait

Berikut ialah versi diubah suai kod anda yang menggunakan kepingan []bait untuk mengubah aksara.

<code class="go">package main

import (
    "bytes"
    "fmt"
)

func ToUpper(str string) string {
    strBytes := []byte(str)
    for i := 0; i < len(str); i++ {
        if str[i] >= 'a' && str[i] <= 'z' {
            chr := uint8(rune(str[i]) - 'a' + 'A')
            strBytes[i] = chr
        }
    }
    return string(strBytes)
}

func main() {
    fmt.Println(ToUpper("cdsrgGDH7865fxgh"))
}
</code>
Salin selepas log masuk

Atas ialah kandungan terperinci ## Bagaimanakah Saya Boleh Menukar Aksara Kecil kepada Huruf Besar dalam Rentetan Go?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan