我制作了一个数组,接受输入“12345”并将其拆分为以下内容
0 - 1
1 - 2
2 - 3
3 - 4
4 - 5
然后我稍微打乱这些数字得到
0 - 5
1 - 2
2 - 3
3 - 4
4 - 1
一旦完成,我想返回获取这个数组并创建一个新订单的整数,所以我想要的输出是“52341”
虽然我已经解决了这个问题,但是当我运行我的代码时出现以下错误“输入字符串的格式不正确。”
这是我的代码,有人可以帮忙吗?
C#
string result = number[i].ToString();
var intList = result.Select(digit => Int64.Parse(digit.ToString()));
Int64[] Circle = intList.ToArray();
int order = Circle.Length;
int check = 0;
while (check < order)
{
numholder = Circle[0];
Array.Copy(Circle, 1, Circle, 0, Circle.Length - 1);
Circle[order - 1] = numholder;
//string p = Circle.ToString();
//string p = Circle.ToString();
Int64 h = Int64.Parse(Circle.ToString());
最佳答案
最简单的做法是完全跳过字符串,并使用小学的多位数定义:
var res = 0L;
var mul = 1L;
foreach (var digit in Circle) {
res += mul*digit;
mul *= 10;
}
您也可以从您的数字创建一个字符串并解析它,但效率较低:
var numStr = string.Join("", Circle.Select(digit => digit.ToString()));
var num = long.Parse(numStr);
关于c# - 将单个数字的 Int 数组转换为多个数字的 Int,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8911018/