C의 삼항 연산자에 해당하는 관용구 Go

Jay Singh 2023년10월12일
C의 삼항 연산자에 해당하는 관용구 Go

삼항 연산자는 프로그래머가 의사 결정을 내리는 데 도움이 되는 3개의 피연산자 연산자입니다. 그것은 if-else 조건의 축약된 버전입니다.

삼항 연산자는 완료하는 데 세 개의 연산자가 필요하기 때문에 명명되었습니다. 대부분의 프로그래밍 언어에 if-else 체인처럼 평가되는 삼항 연산자(?:)가 있지만 Go에는 삼항 연산자가 없습니다.

Golang에서 C의 삼항 연산자 구현하기

다음은 C 프로그래밍 언어의 삼항 연산자의 예이며 Golang으로 변환합니다.

#include <stdio.h>

int main() {
  int x = 5, y = 10, result;
  result = (x > y) ? x : y;
  printf("%d", result);
}

출력:

10

따라서 삼항 연산자는 Go에서 사용할 수 없습니다. 아래 예와 같이 if-else 블록을 대신 사용할 수 있습니다.

예 1:

package main

import (
	"fmt"
)

func main() {

	var x, y, result int
	x = 5
	y = 10

	if x > y {
		result = x
	} else {
		result = y
	}

	fmt.Println(result)
}

출력:

10

예 2:

v = f > 0 ? 1 : 0 // if f > 0 then v is 1 else v is 0

솔루션은 if-else 블록입니다. 동일한 코드를 훨씬 더 읽기 쉬운 방식으로 묘사합니다.

package main

import (
	"fmt"
)

func main() {

	var f, result int
	f = 5

	if f > 0 {
		result = 1
	} else {
		result = 0
	}

	fmt.Println(result)
}

출력:

1