只适合初学者

今天同事问了我不通过string类型把int类型值123589转换成int[]数组。我想了想于是写了出来,其实不难。看你小学数学学得好不好。言归正传。

先不说代码,举个列子就知道怎么玩了。在C#里1235/1000的整数是1,1235%123的余数是5.123%12余数是3,这样看是不是知道了。什么道理了?

int i=123589 它的i.tostring().length是6.所以我们要用123589/100000的到它的整数1.但是这100000这怎么来呢。int的值可能会变。所以我们先写个算法来根据int i的值长度,来得1后面0的位数

public string Getint(int i)//i 是i.tostring().lenght值

{

 string count = "1";

  for(int j=1;j<i.tostring().length;j++)

  {

    count+="0";

  }

  retunrn Convert.ToInt32(count);

}

我们就要命名一个数组

int [] arry=new int[i.tostring().length]();//这个用来存放转换int数组值得

int arrybak=new int[i.tostring().length]();这个用来存放每次被除的数记录如123/10=12

我们在命令一个int main=1这个是自增长的。当我们遍历int i=123589.i.tostring().length值得时候自增长。遍历一次。i的length就减去1.这样就用.i的length-main。看下面代码:

for (int j = 0; j < i.ToString().Length; j++)
{
if (j > 0)
{
if (j >2)//判断j是不是2位数。因为两位数的余数就是(i / icount)%10大于2位以上的相反
{
arry[j] = (i / icount) % arrybak[j - 1];
arrybak[j] = (i / icount);
}
else
{
arry[j] = (i / icount)%10;
arrybak[j] = (i / icount);
}
}
else
{
arry[j] = (i / icount);
arrybak[j] = (i / icount);
}
icount = Getint(i.ToString().Length - main);
main++;
}

这样也许说的不是很清楚所以我把所有代码贴在下面。希望大家参考

static void Main(string[] args)
{

int i = 153589;
int icount = Getint(i.ToString().Length);
int[] arry = new int[i.ToString().Length];
int[] arrybak = new int[i.ToString().Length];
int main = 1;
for (int j = 0; j < i.ToString().Length; j++)
{
if (j > 0)
{
if (j >2)
{
arry[j] = (i / icount) % arrybak[j - 1];
arrybak[j] = (i / icount);
}
else
{
arry[j] = (i / icount)%10;
arrybak[j] = (i / icount);
}
}
else
{
arry[j] = (i / icount);
arrybak[j] = (i / icount);
}
icount = Getint(i.ToString().Length - main);
main++;
}
}

public static int Getint(int i)
{
string count = "1";
for (int j = 1; j < i; j++)
{
count += "0";
}

return Convert.ToInt32(count);
}

把int类型值转换成int数组(不通过string类型转换)的更多相关文章

  1. PHP实现INT型,SHORT型,STRING转换成BYTE数组

    实现PHP实现INT型,SHORT型,STRING转换成BYTE数组的转化: class Bytes { public static function integerToBytes($val) { $ ...

  2. C++ 字符串分割,并把子字符串转换成int型整数

    主要涉及到string类的两个函数find和substr: find()函数的用法: 原型:size_t find ( const string& str, size_t pos = 0 ) ...

  3. 如何将int整型转换成String字符串类型

    自动类型转换适用于兼容类型之间从小范围到大范围数据的转换. nt转换成String int i = 10; int b=1: System.out.pritnln(a + b); 里面靠近字符串,所以 ...

  4. Java中JSONArray转换成int[]的办法

    今天写项目的时候要做一个MyBatis的带IN子句的删除,于是用一个整型数组来保存待删除数据的ID 从前端将JSON字符串搞过来之后如何将JSONArray转换成int类型数组就成了个问题 下面是我的 ...

  5. iOS 16进制字符串转换成int十进制

    NSRange rangeErr; rangeErr.location = 6; rangeErr.length = 2; NSString *strings = [value substringWi ...

  6. C# 中怎么将string转换成int型

    int intA = 0;1.intA =int.Parse(str);2.int.TryParse(str, out intA);3.intA = Convert.ToInt32(str);以上都可 ...

  7. 将int型数字转换成6位字符串,不足的时候,前面补0

    将int型数字转换成6位字符串,不足的时候,前面补0 方法一: int num = 123; num.ToString("000000"); 方法二: int num = 123; ...

  8. MySQL类型转换 使用CAST将varchar转换成int类型排序

    --使用CAST将varchar转换成int类型排序 select distinct(zone_id) from guild_rank_info order by CAST(zone_id as SI ...

  9. C语言atoi()函数:将字符串转换成int(整数)

    头文件:#include <stdlib.h> atoi() 函数用来将字符串转换成整数(int),其原型为:int atoi (const char * str); [函数说明]atoi ...

随机推荐

  1. Python新手学习基础之函数-全局变量和局部变量

    全局变量和局部变量 我们通常把定义在函数外的变量成为全局变量,定义在函数内的变量称为局部变量,顾名思义,全局变量的作用域是整个代码段,局部变量的作用域就只是在它所属的代码段,变量只在它的作用域里有效. ...

  2. Activiti工作流学习-----基于5.19.0版本(4)

    四.使用工作流开发 org.activiti.engine.ProcessEngine提供的Service作用在工作流引擎上面,如果所示是模仿一个公司简单的审批流程,你可以下载这个Demo:Activ ...

  3. iphone 拨打电话的 两种方法-备

    大家想不想在自己的应用中拨打电话呀?打电话可以用openURL:这个API, 如:[[UIApplication sharedApplication] openURL:[NSURL URLWithSt ...

  4. js运算符的优先级

    自上向下优先级降低 运算符 描述 . [] () 字段访问.数组下标.函数调用以及表达式分组 ++ -- - ~ ! delete new typeof void 一元运算符.返回数据类型.对象创建. ...

  5. photoshop sdk

    http://blogs.adobe.com/photoshop/2013/09/introducing-adobe-generator-for-photoshop-cc.html

  6. 【操作系统】进程间通信(C#)

    原文:[操作系统]进程间通信(C#) 08年9月入学,12年7月毕业,结束了我在软件学院愉快丰富的大学生活.此系列是对四年专业课程学习的回顾,索引参见:http://blog.csdn.net/xia ...

  7. STLtoSVG,and SVG to Bmp

    先用这两个工具: Slic3R或者Skeinforge:这个两个工具的作用就是把STL文件切片为叠加的矢量图(SVG格式) 因为SVG是分层的,一层一层的把每层都转换成一张Bmp文件 听说ImageM ...

  8. C++基础回顾1(数据类型, 控制语句, 数组)

    最近两天打开本科学校的C++教材,快速回顾了一下C++方面的内容.虽然书本内容比较基础,但是还是有些知识点值得自己强化记忆.分几篇文章,加上自己的理解记录如下. 先回顾面向过程的部分. C++数据类型 ...

  9. openstack组件手动部署整合

    preface:当你完全且正确的配置好整个OpenStack ENV 你将能看到的和体验到的!!! 我们先来看看简单效果吧,祝君能在这条路上走的更远,更好;

  10. html checkbox全选或者全不选

    /* 全选或全不选 */ function CheckedAllOrNo() { var arr = $(':checkbox'); for (var i = 1; i < arr.length ...