Golang お勉強 1日目

2026-02-10T12:49:35.672Z

少し前からGo言語に興味を持っており、いつか触ろうとしていたが触れていなかった。
ようやく時間に余裕が生まれたので、触ってみることにする。

インストール

Arch Linuxを使っている場合はpacmanから簡単にインストールできる。

pacman -S go

プロジェクトの初期化

github.com/5seg/hello-goにgitリポジトリを置く前提で初期化。

~$ go mod init github.com/5seg/hello-go
go: creating new go.mod: module github.com/5seg/hello-go

あそんでみる

Hello World

ド定番のHello Worldから。main.goに記述。

package main

import "fmt"

func main() {
	fmt.Println("Hello World!")
}

実行

~$ go run .
Hello World!

ちゃんと動く。

Array

Go言語の配列は長さの指定が必要みたい?

package main

import "fmt"

func main() {
	var arr [5]int
	arr[0] = 1
	arr[4] = 100
	fmt.Println(arr)
}
~$ go run .
[1 0 0 0 100]

うーん。と思っていたらスライスというものがあるらしい。
ふむ、makecopyを使えば良さそう。

package main

import "fmt"

func main() {
	x := 0
	var a []int
	for i := 0; i < 10; {
		x = x+1
		backup := a
		a = make([]int,i+1)
		copy(a,backup)
		a[i] = x
		fmt.Println(a)
		i = i+1
	}
}
~$ go run .
[1]
[1 2]
[1 2 3]
[1 2 3 4]
[1 2 3 4 5]
[1 2 3 4 5 6]
[1 2 3 4 5 6 7]
[1 2 3 4 5 6 7 8]
[1 2 3 4 5 6 7 8 9]
[1 2 3 4 5 6 7 8 9 10]

楽しい。ただ、JavaScriptと全然違うので慣れが必要。

今日はここまで。


記事一覧 ↩️