golang 中string和int类型相互转换

总结了golang中字符串和各种int类型之间的相互转换方式:

string转成int:

int, err := strconv.Atoi(string)

string转成int64:

int64, err := strconv.ParseInt(string, 10, 64)

int转成string:

string := strconv.Itoa(int)

int64转成string:

string := strconv.FormatInt(int64,10)

字符串到float32/float64

float32, err = ParseFloat(string, 32) 

float64,err = ParseFloat(string,64)

interface{}与其他类型之间的转换

转换方式包括隐式转换与断言转换。

1、interface{}类型转换成具体类型:interfaceVar.(具体类型)

原理:断言实现。如:

断言成功返回true,失败返回false

value, ok := a.(string)
if !ok {
  fmt.Println("It's not ok for type string")
  return
}
fmt.Println("The value is ", value)

2、具体类型可以隐式转换成interface{}类型

3、string与[]byte之间的转换:

string到[]byte:字节数组=[]byte(字符串)

字节数组到string: 字符串=string([]byte)

到此这篇关于golang 中string和int类型相互转换的文章就介绍到这了,更多相关golang string和int转换内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • Golang中的自定义类型之间的转换的实现(type conversion)

    这里不讨论数值与字符串之间.或者整型与浮点型之间的转换.这里要讨论的是自定义类型之间的转换,这个转换与其他语言都不一样,而且在go的源码中也被大量使用. 这里列举两个实用的例子. 转换成实现了某个(些)接口的自定义类型 比如:sort包里面的IntSlice,是一个[]int的自定义类型,并且实现了sort.Interface接口,如下所示: type IntSlice []int // 实现sort.Interface接口的方法 func (p IntSlice) Len() int { re

  • golang的强制类型转换实现

    golang是一种强类型语言,虽然在代码中经常看到这种写法,i:=10这其实这是编译器自动做了类型推断在编译期间.编译器会对数据进行类型检查.不同类型的数据不能赋值,不能在函数中传参.强类型语言有一些优势,很多的错误会在编译期间被检查出来,不想php和python等弱类型语言,很多错误只有运行到才能被发现.同样,强类型也有一些缺点,写代码的时候要考虑数据类型了,失去了一些灵活性. 言归正传,开始golang的类型转换问题 golang的类型转换和C/C++ java等语言的类型转换还有点区别 C

  • golang 实现json类型不确定时的转换

    将json转为结构体时,经常会遇到无法确定某个字段类型的情况.在Go中可以使用interface 任意类型来解决. // convert json to struct // type uncertain package main import ( "fmt" "encoding/json" ) type Host struct { Id interface{} IdcId interface{} } func main() { b := []byte(`{"

  • golang 中string和int类型相互转换

    总结了golang中字符串和各种int类型之间的相互转换方式: string转成int: int, err := strconv.Atoi(string) string转成int64: int64, err := strconv.ParseInt(string, 10, 64) int转成string: string := strconv.Itoa(int) int64转成string: string := strconv.FormatInt(int64,10) 字符串到float32/floa

  • go中string、int、float相互转换的实现示例

    目录 string转其它 string --> int:将字符串13转换为int类型的数值13 string --> int64:将字符串13转换为int64(十进制) string --> float64.float32 int.int64转其它 int --> string int64 --> string float转其它 float --> string float64 --> int64(会有精度损失) 之前很多次用到的时候总会忘一些,这次记下来,后面再

  • js中string转int把String类型转化成int类型

    今天做项目的时候,碰到一个问题,需要把String类型的变量转化成int类型的.按照常规,我写了var i = Integer.parseInt("112");但控制台报错,说是"'Integer' 未定义".后来,才知道,原来js中String转int和Java中不一样,不能直接把Java中的用到js中.改成var j = parseInt("11");就ok了. 备注:无论是 Java 还是 JavaScript, parseInt 方法都有

  • Android中String与int相互转换

    目录 一.如何将字串 String 转换成整数 int? 这两种方法有什么区别呢?作用是不是一样的呢?是不是在任何下都能互换呢? 二. 如何将整数 int 转换成字串 String ? 这两种方法有什么区别呢?作用是不是一样的呢?是不是在任何下都能互换呢? 一.如何将字串 String 转换成整数 int? 方法一: int i = Integer.parseInt([String]);或 i = Integer.parseInt([String],[int radix]); 方法二: int

  • C++中string转换为char*类型返回后乱码问题解决

    问题来源: 在写二叉树序列化与反序列化时发现序列化函数为char* Serialize1(TreeNode *root)  其函数返回类型为char*,但是我在实现的过程中为了更方便的操作添加字符串使用的是C++中string类型的变量,这就导致我最后得到的结果res是string类型,若是要返回需要转化为char *类型.而等我将string类型转为char*后返回在主函数中就成了乱码. 先直接说最后的解决办法: 第一种:定义一个char数组,数组长度为stringlength+1,将stri

  • Java中String类常用类型实例总结

    目录 1.创建字符串的方法 1.1构造 1.2引用对象  2.字符串的比较 3.字符串的不可改变性 4.数组转字符串  5.判断是否是数字字符串  isNumberChar(  )  6.字节变字符串  7.字符串的查找 8.字符的替换 9.字符串的分割 9.1以单个符号来分割  9.2多个分隔符分割  9.3特殊符号分割 10.提取子串str.substring(  )  11.去空格 12.字符串的拼接 13.StringBuffer   13.1字符串的拼接 13.2方法的返回类型 总结

  • Java中string和int的互相转换问题

    int -> String int i=12345; String s=""; 核心:s=i+""; String -> int s="12345"; int i; 核心:i=Integer.parseInt(s); package com.fry.util; public class Transfer { public void stringToInt(){ String id="20171091"; int n

  • js中string和number类型互转换技巧(分享)

    1.string-->number string类型   *1  即可变成  number类型 2.number-->string number类型  +''  即可变成  string 类型 <script type="text/javascript"> function screenInfo() { var str = '012.8372'; var s = 0; str = str * 1; alert(typeof (str));//number s +

  • Golang中的time.Duration类型用法说明

    在 Time 包中,定义有一个名为 Duration 的类型和一些辅助的常量: type Duration int64 const ( Nanosecond Duration = 1 Microsecond = 1000 * Nanosecond Millisecond = 1000 * Microsecond Second = 1000 * Millisecond Minute = 60 * Second Hour = 60 * Minute ) 那么我们看下面一段代码: func Test(

  • C++中string与int的相互转换实现代码

    做ACM时,经常用到string和int的转换,下面的程序: 核心代码: #include<iostream> #include<string> #include<sstream> using namespace std; int main() { /////////////////////////// string 转为 int string str="1234"; int n; istringstream iss;//istringstream从

随机推荐