Rumah pembangunan bahagian belakang Golang Belajar dari awal: Kuasai asas bahasa Go

Belajar dari awal: Kuasai asas bahasa Go

Feb 01, 2024 am 08:45 AM
pergi bahasa belajar pengetahuan asas pasangan nilai kunci

Belajar dari awal: Kuasai asas bahasa Go

Mula dari Scratch: Belajar Asas Bahasa Go

Pengenalan

Bahasa Go, juga dikenali sebagai Golang, ialah bahasa pengaturcaraan sumber terbuka yang dibangunkan oleh Google. Ia dikeluarkan pada tahun 2009 dan cepat menjadi bahasa popular, terutamanya dalam bidang seperti pembangunan web, sistem teragih dan pengkomputeran awan. Bahasa Go terkenal dengan kesederhanaan, kecekapan dan keselarasan yang kukuh.

Sintaks asas

1. Pembolehubah dan pemalar

Dalam bahasa Go, pembolehubah dan pemalar ditaip. Pembolehubah boleh menyimpan data, manakala pemalar tidak boleh diubah. Format pengisytiharan pembolehubah ialah:

var 变量名 类型
Salin selepas log masuk

Format pengisytiharan pemalar ialah:

const 常量名 类型 = 值
Salin selepas log masuk

2. Jenis data

Bahasa Go menyediakan pelbagai jenis data, termasuk jenis data asas dan jenis data komposit. Jenis data asas termasuk:

  • Jenis Boolean (bool): nilainya benar atau palsu
  • Jenis integer (int): termasuk int8, int16, int32, int64, dll.
  • Jenis titik terapung (float): termasuk float32 dan float64
  • Jenis rentetan (rentetan): Terdiri daripada rentetan aksara
  • Jenis bait (bait): Bersamaan dengan uint8

Jenis data komposit termasuk:

  • Array (array): Struktur data panjang tetap
  • Slice (slice): struktur data panjang berubah
  • Jadual hash (peta): struktur data pasangan nilai kunci
  • struktur (struct): struktur data tersuai

3 Operator

disediakan oleh bahasa Go Ia mempunyai a pelbagai pengendali, termasuk pengendali aritmetik, pengendali hubungan, pengendali logik dan pengendali bitwise. Operator aritmetik termasuk:

    Tambahan (+): Menambah dua operan
  • Tolak (-): Menolak dua operan
  • Pendaraban (*): Mendarab dua operan
  • Pembahagian (/): Bahagi dua operan
  • % ): Bahagikan dua operan dan kembalikan baki
Operan perhubungan termasuk:

    Sama (==): Bandingkan dua Sama ada operan itu sama
  • tidak sama (!=): bandingkan sama ada kedua-dua operan itu tidak sama
  • lebih besar daripada (>): bandingkan sama ada kedua-dua operan itu lebih besar daripada
  • kurang daripada (<): bandingkan sama ada kedua-dua operan itu sama Kurang daripada
  • Lebih besar daripada atau sama dengan (>=): Membandingkan sama ada dua operan lebih besar daripada atau sama dengan
  • Kurang daripada atau sama dengan (<=): Membandingkan sama ada dua operan kurang daripada atau sama dengan
Operan logik termasuk:

    DAN (&&): Jika kedua-dua operan adalah benar , kembalikan benar, jika tidak pulangkan palsu
  • Atau (||): Jika salah satu daripada dua operan adalah benar, kembalikan benar, jika tidak kembalikan palsu
  • BUKAN ( !): Terbalikkan operan
Pengendali bitwise termasuk:

    Dan (&): DAN digit perduaan dua operan
  • atau (|): Tukar digit perduaan dua operan Lakukan operasi ATAU
  • Eksklusif ATAU (^): Eksklusif ATAU digit perduaan dua operan
  • Anjakan kiri (<<): Gerakkan digit perduaan operan ke kiri dengan bilangan digit yang ditentukan
  • Anjakan ke kanan (>>): Gerakkan digit perduaan operan ke kanan mengikut yang ditentukan bilangan digit

4. Penyataan kawalan

Bahasa Go menyediakan pelbagai penyataan kawalan, termasuk penyataan if, penyataan suis, untuk penyataan dan Penyata sementara dsb. Format sintaks pernyataan if ialah:

if 条件 {
    语句块
} else {
    语句块
}
Salin selepas log masuk

Format sintaks pernyataan suis ialah:

switch 表达式 {
    case 值1:
        语句块
    case 值2:
        语句块
    ...
    default:
        语句块
}
Salin selepas log masuk

Format sintaks pernyataan for ialah:

for 初始条件; 条件; 递增/递减 {
    语句块
}
Salin selepas log masuk

Format sintaks pernyataan while ialah:

while 条件 {
    语句块
}
Salin selepas log masuk

5 . Fungsi

Fungsinya ialah Go Unit asas penggunaan semula kod dalam bahasa. Format pengisytiharan fungsi ialah:

func 函数名(参数列表) 返回值类型 {
    函数体
}
Salin selepas log masuk

Ibu fungsi boleh mengandungi pengisytiharan berubah-ubah, penyata, penyata pulangan, dsb. Format sintaks pernyataan pulangan ialah:

return 表达式
Salin selepas log masuk

6 Concurrency

Bahasa Go menyokong pengaturcaraan serentak, iaitu, melaksanakan berbilang tugas pada masa yang sama. Pengaturcaraan serentak boleh meningkatkan kecekapan dan prestasi program. Bahasa Go menyediakan pelbagai mekanisme pengaturcaraan serentak, termasuk pakej goroutine, saluran dan penyegerakan.

7 Pakej

Pakej ialah unit asas organisasi kod dalam bahasa Go. Pakej boleh mengandungi fungsi, pembolehubah, pemalar, jenis, dsb. Format pengisytiharan pakej ialah:

package 包名
Salin selepas log masuk

Pakej boleh mengimport pakej lain untuk menggunakan fungsi, pembolehubah, pemalar, jenis, dll. dalam pakej lain. Format sintaks pakej yang diimport ialah:

import "包名"
Salin selepas log masuk

Kesimpulan

Di atas adalah pengenalan ringkas kepada pengetahuan asas bahasa Go. Jika anda ingin mempelajari bahasa Go secara mendalam, anda juga perlu membaca dokumen rasmi, tutorial dan buku. Bahasa Go ialah bahasa pengaturcaraan yang berkuasa Menguasainya boleh membantu anda membangunkan perisian yang cekap dan boleh dipercayai.

Atas ialah kandungan terperinci Belajar dari awal: Kuasai asas bahasa 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

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Tetapan grafik terbaik
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Cara Memperbaiki Audio Jika anda tidak dapat mendengar sesiapa
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Cara Membuka Segala -galanya Di Myrise
4 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Apakah kaedah menukar rentetan vue.js ke dalam objek? Apakah kaedah menukar rentetan vue.js ke dalam objek? Apr 07, 2025 pm 09:18 PM

Menggunakan json.parse () rentetan ke objek adalah yang paling selamat dan paling efisien: pastikan rentetan mematuhi spesifikasi JSON dan mengelakkan kesilapan biasa. Gunakan cuba ... menangkap untuk mengendalikan pengecualian untuk meningkatkan keteguhan kod. Elakkan menggunakan kaedah eval (), yang mempunyai risiko keselamatan. Untuk rentetan JSON yang besar, parsing parsing atau parsing tak segerak boleh dipertimbangkan untuk mengoptimumkan prestasi.

Perpustakaan mana yang dibangunkan oleh syarikat besar atau disediakan oleh projek sumber terbuka yang terkenal? Perpustakaan mana yang dibangunkan oleh syarikat besar atau disediakan oleh projek sumber terbuka yang terkenal? Apr 02, 2025 pm 04:12 PM

Perpustakaan mana yang dibangunkan oleh syarikat besar atau projek sumber terbuka yang terkenal? Semasa pengaturcaraan di GO, pemaju sering menghadapi beberapa keperluan biasa, ...

Bagaimana menyelesaikan masalah penukaran jenis user_id semasa menggunakan aliran redis untuk melaksanakan beratur mesej dalam bahasa Go? Bagaimana menyelesaikan masalah penukaran jenis user_id semasa menggunakan aliran redis untuk melaksanakan beratur mesej dalam bahasa Go? Apr 02, 2025 pm 04:54 PM

Masalah menggunakan redisstream untuk melaksanakan beratur mesej dalam bahasa Go menggunakan bahasa Go dan redis ...

Apa yang perlu saya lakukan jika label struktur tersuai di Goland tidak dipaparkan? Apa yang perlu saya lakukan jika label struktur tersuai di Goland tidak dipaparkan? Apr 02, 2025 pm 05:09 PM

Apa yang perlu saya lakukan jika label struktur tersuai di Goland tidak dipaparkan? Apabila menggunakan Goland untuk Pembangunan Bahasa GO, banyak pemaju akan menghadapi tag struktur tersuai ...

Kenapa perlu lulus petunjuk apabila menggunakan perpustakaan Go dan Viper? Kenapa perlu lulus petunjuk apabila menggunakan perpustakaan Go dan Viper? Apr 02, 2025 pm 04:00 PM

GO Pointer Syntax dan menangani masalah dalam penggunaan perpustakaan Viper semasa pengaturcaraan dalam bahasa Go, adalah penting untuk memahami sintaks dan penggunaan petunjuk, terutama dalam ...

Bagaimana untuk membezakan antara menutup tab penyemak imbas dan menutup seluruh penyemak imbas menggunakan JavaScript? Bagaimana untuk membezakan antara menutup tab penyemak imbas dan menutup seluruh penyemak imbas menggunakan JavaScript? Apr 04, 2025 pm 10:21 PM

Bagaimana untuk membezakan antara tab penutup dan menutup seluruh penyemak imbas menggunakan JavaScript pada penyemak imbas anda? Semasa penggunaan harian penyemak imbas, pengguna boleh ...

Adakah antara muka bahasa Go adalah jenis itik? Apakah mekanisme pelaksanaan polimorfisme? Adakah antara muka bahasa Go adalah jenis itik? Apakah mekanisme pelaksanaan polimorfisme? Apr 02, 2025 pm 02:48 PM

Antara muka dan polimorfisme di GO: Menjelaskan salah faham umum Banyak pemula yang sering menyambungkan konsep "jenis itik" dan "polimorfisme" dengan GO ...

Apakah proses menukar XML ke dalam imej? Apakah proses menukar XML ke dalam imej? Apr 02, 2025 pm 08:24 PM

Untuk menukar imej XML, anda perlu menentukan struktur data XML terlebih dahulu, kemudian pilih perpustakaan grafik yang sesuai (seperti matplotlib Python) dan kaedah, pilih strategi visualisasi berdasarkan struktur data, pertimbangkan volum data dan format imej, lakukan pemprosesan batch atau gunakan perpustakaan yang cekap, dan akhirnya simpan sebagai PNG, JPEG, atau SVG mengikut keperluan.

See all articles