2017-01-15 3 views
-4

У меня есть две переменные, каждая из которых содержит строку. Я хочу объединить оба с линией перевода между ними. Как мне это сделать?В Rust, как мне конкатенировать одну строку с линией перевода строки, а затем еще одну строку?

+0

Дубликат http://stackoverflow.com/q/30154541/155423 – Shepmaster

+0

@Shepmaster Пожалуйста, прочитайте вопрос. Ваш ответ неправильный, я не задаю тот же вопрос в ссылке. – mrossini

+0

Конкатенация строк - это конкатенация строк ... – Shepmaster

ответ

2

Существует несколько способов.

Самое ценное я видел использует метод join на массиве:

fn main() { 
    let a = "Hello"; 
    let b = "world"; 
    let result = [a, b].join("\n"); 

    print!("{}", result); 
} 

В зависимости от вашего использования случае вы можете также предпочитают больше контроля:

fn main() { 
    let a = "Hello"; 
    let b = "world"; 
    let result = format!("{}\n{}", a, b); 

    print!("{}", result); 
} 

Есть еще некоторые ручные способы (некоторые из которых, я считаю, вообще избегают любых ассигнований), но я предпочитаю два выше.

+0

Спасибо за это. Сначала решена проблема. Вторая не работает. – mrossini

+0

«Не работает» - как? –

+0

По какой-то причине я не могу понять, второе предложение печатает только одну строку как «Hello \ nworld», в то время как первое предложение печатает Hello в одной строке и мире во втором. – mrossini

Смежные вопросы