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

Равенство строк в Rust

При использовании конструкции if можно сравнивать и строки. Фразы в двойных кавычках сравнивают тем же знаком ==, что и числа. Ответ показывает, совпали ли тексты посимвольно. Неравенство пишут знаком !=. Кавычки вокруг литерала обязательны.

Для примера пусть в переменной test хранится какая-то строка:

let test = "abc";

Давайте проверим, равно ли содержимое переменной test строке "abc":

let test = "abc"; if test == "abc" { println!("Y"); // сработает это, так как переменная равна "abc" } else { println!("N"); }

В условии можно сравнить переменную с литералом или две переменные, если в обеих лежит текст в двойных кавычках. Кавычки вокруг литерала обязательны: без них имя воспринимают как переменную, а не как фразу.

Проверим имя пользователя:

let name = "ann"; if name == "ann" { println!("known"); } else { println!("guest"); }

Сравним две переменные с фразами:

let plan = "pro"; let want = "pro"; if plan == want { println!("match"); } else { println!("change"); }

Пусть в переменной text хранится произвольная строка. Символы перечисляет chars, а count считает их. Проверим, что символов не меньше трех:

let text = "12345"; if text.chars().count() >= 3 { println!("!"); // сработает это }

Отдельный символ сравнивают с символом в одиночных кавычках. Первый символ строки "12345" сравнивают с '1'. У числа 1 другой тип, сравнение с ним не собирается:

let text = "12345"; let first = text.chars().next().unwrap(); if first == '1' { println!("!"); // сработает это }

Последний символ берут так же и сравнивают с символом '5':

let text = "12345"; let last = text.chars().last().unwrap(); if last == '5' { println!("!"); // сработает это }

Дана строка:

let mode = "read";

При совпадении mode с "read" выведите "on", иначе "off".

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

let a = "go"; let b = "rs";

Если фразы различаются, выведите "diff", иначе "same".

Дана строка:

let tag = "beta";

Выведите "test", когда tag равно "beta", иначе "live".

Дана строка:

let text = "12345";

Если символов не меньше трех, выведите "!".

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

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