Bir int dəyərini Go-da bir simliya necə çevirmək olar?

 i := 123 s := string(i) 

s "E" dir, amma "123"

Xahiş edirəm mənə "123" əldə edə bilərsiniz.

Və Java'da bunu edə bilərəm:

 String s = "ab" + "c" // s is "abc" 

necə gedə bilərəm?

350
11 апр. hardPass 11 aprel müəyyən etdi 2012-04-11 15:30 '12 saat 15:30 'da 2012-04-11 15:30
@ 7 cavab

strconv paketini istifadə edin.

Məsələn:

 package main import ( "strconv" "fmt" ) func main() { t := strconv.Itoa(123) fmt.Println(t) } 

Siz simvolları sadəcə + 'istifadə edərək və ya strings paketinin Join funksiyasından istifadə edə bilərsiniz.

547
11 апр. 11 apreldə Klaus Byskov Pedersen tərəfindən verilmiş cavab 2012-04-11 15:33 '12 at 3:33 pm 2012-04-11 15:33
 fmt.Sprintf("%v",value); 

Münasib formatlaşdırıcının dəyərini hansı növdən istifadə etdiyini bilirsinizsə, məsələn, bir int üçün %d

border=0

Əlavə məlumat - fmt

108
25 марта '14 в 8:59 2014-03-25 08:59 Cavab Jasmeet Singh tərəfindən 25 mart 'da saat 08: 59' da veriləcək 2014-03-25 08:59

Qeyd etmək maraqlıdır ki, strconv.Itoa qısa

 func FormatInt(i int64, base int) string 

bazası ilə 10

Məsələn:

 strconv.Itoa(123) 

bərabərdir

 strconv.FormatInt(int64(123), 10) 
35
17 янв. Cavab kq tərəfindən verilir Yanvar 17 2015-01-17 18:10 '15 at 18:10 2015-01-17 18:10

Fmt.Sprintf istifadə edə bilərsiniz

Məsələn, http://play.go> səhifəsinə baxın.

12 апр. Cavab tənbəl verilir12 apr. 2012-04-12 00:26 '12 at 0:26 2012-04-12 00:26

fmt.Sprintf , strconv.Itoastrconv.FormatInt işi edəcəyik. Amma Sprintf reflect paketini istifadə edəcək və başqa bir obyekt ayıracaq, buna görə yaxşı bir seçim olmayacaq.

2019

31 мая '16 в 13:04 2016-05-31 13:04 Cavab Bryce tərəfindən verilir 31, '16 saat 13:04 2016-05-31 13:04

Bu halda, həm strconv həm də strconv eyni vəzifəni yerinə yetirir, lakin strconv paketi istifadə Itoa ən yaxşı seçimdir, çünki fmt.Sprintf dönüşüm zamanı başqa bir obyekt ayırır.

2019

28 июня '16 в 16:24 2016-06-28 16:24 Cavab manigandand tərəfindən verilir və 28 iyun 16: 16-da 2016-06-28 16:24

int64 :

 n := int64(32) str := strconv.FormatInt(n, 10) fmt.Println(str) // Prints "32" 
1
03 окт. Cae Vecchi tərəfindən verilmiş cavab 3 oktyabr 2018-10-03 14:17 '18 at 2:17 pm 2018-10-03 14:17

Tags ilə bağlı digər suallar və ya bir sual