Следите за новинками
в нашем Telegram канале. Жми, чтобы подписаться:)
⊗goPmCdRE 100 of 350 menu
◀ ▶

Сравнение рун в Go

Руны сравнивают так же, как целые числа. Литерал в одинарных кавычках имеет тип rune, поэтому две руны соединяют знаком == или != между собой.

Байт из строки по индексу имеет тип byte. С руной его напрямую не сравнивают: для английской буквы удобно сравнить байт с byte('A') или с "A"[0].

Сравним две руны и выберем ветку:

a := 'X' b := 'X' if a == b { fmt.Println("same rune") } else { fmt.Println("diff rune") }

Проверим первый байт английского слова:

word := "Arc" if word[0] == byte('A') { fmt.Println("starts with A") } else { fmt.Println("other start") }

Пусть дана строка из цифр. Проверим первый байт. Байт сравнивают с byte('1'), а не с числом 1:

str := "12345" if str[0] == byte('1') { fmt.Println("!") // сработает это }

Проверим последний байт на равенство символу "5":

str := "12345" last := str[len(str)-1] if last == byte('5') { fmt.Println("!") // сработает это }

Дана переменная:

ch := 'z'

Если ch равно 'z', выведите "end", иначе "mid".

Дана строка:

tag := "go"

Если первый байт равен byte('g'), выведите "g", иначе "other".

Сравните руны 'M' и 'N' в условии и выведите "near" или "far".

Дана некоторая строка. Проверьте, заканчивается ли она на символ "0".

← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить