Menu
Coddy logo textTech

エラーのチェック

CoddyのGOジャーニー「基礎」セクションの一部 — レッスン 105/109。

Goでは、if文を使用してエラーをチェックします。このパターンは非常に一般的です。

if err != nil を使用してエラーが発生したかどうかを確認します:

func main() {
    result, err := divide(10, 0)
    
    if err != nil {
        fmt.Println("Error occurred:", err)
        return // エラーが発生した場合は実行を停止します
    }
    
    // エラーがない場合のみ続行します
    fmt.Println("Result:", result)
}

出力は次のようになります:

Error occurred: cannot divide by zero
challenge icon

チャレンジ

初心者

Goでは、関数はしばしば結果を使用する前にチェックする必要があるエラー値を返します。このチャレンジでは、if文を使用してエラーをチェックする練習をします。

ファイルを開くことをシミュレートし、ファイルが存在しない場合にエラーを返すopenFileという関数があります。あなたのタスクは、エラーがあるかどうかをチェックし、適切なメッセージを出力することです。

チートシート

if err != nil を使用してエラーをチェックします:

result, err := someFunction()

if err != nil {
    fmt.Println("Error occurred:", err)
    return // エラーが発生した場合は実行を停止します
}

// エラーがない場合のみ続行します
fmt.Println("Result:", result)

自分で試してみよう

package main

import (
	"fmt"
)

// この関数はファイルを開くシミュレーションを行います
// ファイルが存在しない場合はエラーを返します
func openFile(filename string) error {
	if filename == "data.txt" {
		return nil // nil はエラーがないことを意味します
	} else {
		return fmt.Errorf("file %s not found", filename)
	}
}

func main() {
	filename := "config.txt"
	
	// openFile 関数を呼び出します
	err := openFile(filename)
	
	// TODO: err が nil でない(エラーが発生したことを意味する)か確認してください
	// エラーが発生した場合は、"Error: " に続けてエラーメッセージを表示してください
	// エラーが発生しなかった場合は、"File opened successfully" と表示してください
	
}
quiz icon腕試し

このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。

基礎のすべてのレッスン