Go之如何提取数字的各个位数?

文章目录

  • Go之如何提取数字的各个位数?
    • 1. 直接用数学方法进行计算
    • 2. 将数字转换成字符串,再进行截取
    • 总结


Go之如何提取数字的各个位数?

主要有两种方法

  1. 直接用数学方法进行计算
  2. 将数字转换成字符串,再进行截取

1. 直接用数学方法进行计算

数学方法:对于任意一个数n,要计算第site位的数,都可以以下式子得到

n/10^(site-1)%10

例子:

var data int = 123
fmt.println(data/100%10)
fmt.println(data/10%10)
fmt.println(data/1%10)

输出结果:
1
2
3


2. 将数字转换成字符串,再进行截取

例子:

var data int = 123
//Itoa方法可以把整数转换为字符串
data = strconv.Itoa(data)
fmt.println(data[0:1])
fmt.println(data[1:2])
fmt.println(data[2:3])

总结

两种方式都能计算出相同的结果。但是第一种方式计算未知位数的数时很麻烦,要首先计算出数的位数,相比较第二种就没那问题,只要定义足够大的数组就不存在这个问题。

你可能感兴趣的:(Go,Golang,位数,数字,提取转换,Go基础学习,云计算)