Вопросы с тегом 'go'

Go - это язык программирования с открытым исходным кодом. Он имеет статическую типизацию, с синтаксисом, свободно полученным из C, с добавлением автоматического управления памятью, безопасностью типов, некоторыми возможностями динамической типизации, дополнительными встроенными типами, такими как массивы переменной длины и карты значений ключей, а также большой стандартной библиотекой.
20 отв.

Как эффективно конкатенировать строки в Go?

В Go string является примитивным типом, что означает, что она доступна только для чтения, и каждая манипуляция с ней создаст новую строку. Так что, если я хочу многократно объединять строки, не зная длины полученной строки, каков наилучший способ с...
19 нояб. '09 в 6:44
10 отв.

Как проверить, содержит ли карта ключ в Go?

Я знаю, что могу перебрать карту m, for k, v := range m { ... } и искать ключ, но есть ли более эффективный способ проверки существования ключа на карте? Я не мог найти ответ в спецификации языка.
12 янв. '10 в 19:18
8 отв.

Как вы пишете многострочные строки в Go?

Есть ли в Go что-нибудь похожее на многострочные строки Python: """line 1 line 2 line 3""" Если нет, то какой способ записи строк занимает несколько строк?
28 окт. '11 в 21:44
12 отв.

Как преобразовать нулевой байтовый массив в строку?

Мне нужно прочитать [100]byte чтобы передать кучу string данных. Поскольку не все string имеют длину точно 100 символов, оставшаяся часть byte array дополняется 0 с. Если я передам [100]byte в string помощью: string(byteArray[:]), хвостовой 0 буде...
09 янв. '13 в 10:19
7 отв.

Как преобразовать значение int в строку в Go?

i := 123 s := string(i) s - это "E", но я хочу "123" Скажите, пожалуйста, как я могу получить "123". И в Java я могу сделать так: String s = "ab" + "c" // s is "abc" как я могу concat две строки в Go?
11 апр. '12 в 15:30
8 отв.

Как проверить, существует ли файл в Go?

Стандартная библиотека Go не имеет функции, предназначенной только для проверки наличия файла или нет (например, Python os.path.exists). Что такое идиоматический способ сделать это?
20 сент. '12 в 21:42
4 отв.

Что такое идиоматический способ представления перечислений в Go?

Я пытаюсь представить упрощенную хромосому, состоящую из N баз, каждая из которых может быть только одной из {A, C, T, G}. Я хотел бы формализовать ограничения с перечислением, но мне интересно, какой самый идиоматический способ эмуляции перечислен...
20 янв. '13 в 19:07
4 отв.

Форматировать строку Go без печати?

Есть ли простой способ отформатировать строку в Go без печати строки? Я могу сделать: bar := "bar" fmt.Printf("foo: %s", bar) Но я хочу, чтобы отформатированная строка возвращалась, а не печаталась, чтобы я мог манипулировать ею дальше. Я также ...
20 июня '12 в 19:21
9 отв.

Как назначить строку байтам массиву

Я хочу назначить строку массиву байтов: var arr [20]byte str := "abc" for k, v := range []byte(str) { arr[k] = byte(v) } Есть ли другой метод?
07 нояб. '11 в 5:29
5 отв.

Есть ли петля foreach в Go?

Существует ли конструкция foreach на языке Go? Могу ли я перебирать фрагмент или массив с помощью for?
16 окт. '11 в 7:47
9 отв.

Когда запускается функция init()?

Я попытался найти точное объяснение того, что функция init() делает в Go. Я прочитал, что говорит Effective Go, но я не был уверен, полностью ли я понял, что он сказал. Точное предложение, в котором я не уверен, следующее: И, наконец, означает, на...
16 июля '14 в 23:34
15 отв.

какими должны быть значения GOPATH и GOROOT?

Я пытаюсь установить doozer как это $ goinstall github.com/ha/doozer Я получаю эти ошибки. goinstall: os: go/build: package could not be found locally goinstall: fmt: go/build: package could not be found locally goinstall: io: go/build: package c...
01 нояб. '11 в 20:32
12 отв.

Как найти тип объекта в Go?

Как найти тип объекта в Go? В Python я просто использую typeof для выбора типа объекта. Точно так же в Go, есть ли способ реализовать то же самое? Вот контейнер, из которого я повторяю: for e := dlist.Front(); e != nil; e = e.Next() { lines := ...
24 нояб. '13 в 5:08
2 отв.

Указатели против значений в параметрах и возвращаемых значениях

В Go есть различные способы вернуть значение struct или его фрагмент. Для отдельных я видел: type MyStruct struct { Val int } func myfunc() MyStruct { return MyStruct{Val: 1} } func myfunc() *MyStruct { return &MyStruct{} } func ...
08 мая '14 в 16:21
12 отв.

чтение файла по строкам в go

Я не могу найти file.ReadLine функцию в Go. Я могу понять, как быстро написать письмо, но просто интересно, не хочу ли я что-то здесь забыть. Как читать файл по строкам?
06 янв. '12 в 14:50