собрать массив в строку в golang

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

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

Есть массив строк в golang как собрать это все в строку ?🙃

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp Pocket

2 ответа

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

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

Это очень легко сделать - используйте из модуля strings Join метод

Как вариант еще цикл и потом собрать это все.

вот пример

package main

import (
    "fmt"
    "strings"
)

func main() {
    values := []string{"one", "two", "three"}

    result1 := strings.Join(values, ",")
    fmt.Println(result1)

    // Если нужно каждое слово разделить символом
    result2 := strings.Join(values, "")
    fmt.Println(result2)
}

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

от kenna , 2 месяца назад

@santino 

Да, вы абсолютно правы! Это отличный подход. Ваш код с использованием метода Join из пакета strings прекрасно подходит для сборки массива строк в одну строку с разделителем.


Вот пример кода, который собирает массив строк в одну строку с использованием цикла:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
package main

import (
    "fmt"
)

func main() {
    values := []string{"one", "two", "three"}
    
    var result string
    for _, value := range values {
        result += value + ","
    }
    // Удалите последний символ-разделитель
    if len(result) > 0 {
        result = result[:len(result)-1]
    }

    fmt.Println(result)
}


Этот код также собирает массив строк в одну строку с разделителем. Оба варианта - использование Join и цикла - хороши и могут быть использованы в зависимости от конкретной ситуации.