golang конкатенация строк

Пользователь

julian

от julian , в категории: Общие вопросы , год назад

Знаю, что конкатенацию строк в Golang’е можно делать с помощью арифметического знака “+”, а как ещё это сделать, не используя этот знак? Если можно, дайте пример кода.


Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp Pocket

9 ответов

Пользователь

от genesis_tillman , год назад

Мне больше нравится вот такой метод чем через плюс


  var b bytes.Buffer 
      
  b.WriteString("H) 
  b.WriteString("e") 
  b.WriteString("l") 
  b.WriteString("l") 
  b.WriteString("o") 
      
  fmt.Println("String: ", b.String()) 

Пользователь

от gracie , год назад

В Golang 1.10 появился новый тип конкатенации строк strings.builder. Подробнее про него можешь почитать на яндекс дзен, год назад вышла статья, так что актуальности этого метода не исчезла.


Пользователь

от herminio , год назад

Пару лет на хабре видел интересную статью – Ускорение конкатенации строк в Go своими руками. Там идёт сравнение “+” и strings.builder. Довольно интересная статья, в конце даже немного ассемблера будет.)


Пользователь

от gracie , год назад

Вот тебе пример самой простой конкатенации. Объединение строк в массив, а потом их вывод с помощью цикла for))

Пользователь

от lauren , год назад

На стаковерфлоу почти одиннадцать лет назад был создан топи по тому, как эффективно делать конкатенацию строк в Golangю. Зайди, почитай, есть полезная и интересная информация.


Пользователь

от brain.von , год назад

Мне понравилась статья на кодинжиниринг про конкатенацию строк. Там очень много примеров и подсказок, при использовании данного метода. Так что зайди туда и посмотри.


Пользователь

от herminio , год назад

Пакет строк включает в себя объединение метода для объединения нескольких строк:

strings.Join(sample, " ")

Join объединяет элементы массива для создания одной строки. Второй параметр - это разделитель, который помещается между элементом массива.

package main

import ("fmt" "math" )"fmt" "strings")

func main() {

  greetings := []string{"Hello","world!"}  

  fmt.Println(strings.Join(greetings, " "))

}


Пользователь

от julian , год назад

Спасибо за реальные примеры и сайты, на которых можно выудить нужную мне информацию. Буду сейчас читать всё это и просвещаться. Надеюсь, я смогу разобраться в этом. 


Пользователь

от brain.von , год назад

На medium.com в прошлом году вышла довольно-таки спорная статья на тему обработки ошибок в Golang. Но всё же советую ознакомиться с этой статьёй. Единственная сложность – она на английском.