博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
C#:实现一个将字符串转换为整数的方法
阅读量:6603 次
发布时间:2019-06-24

本文共 2161 字,大约阅读时间需要 7 分钟。

具体代码如下:暂不支持浮点数四舍五入操作

1        static void Main(string[] args) 2         { 3             string numStr = "-177.00"; 4             int num; 5             string isSuccess=IntParse(numStr, out num)?"Yes":"No"; 6             Console.WriteLine($"字符串:{numStr} \n是否转换成功:{isSuccess}\n转换为整数:{num}"); 7             Console.ReadKey();                           8         } 9         private static bool IntParse(string str,out int res)10         {11             Dictionary
numDic = new Dictionary
12 {13 {
"0",0 },14 {
"1",1 },15 {
"2",2 },16 {
"3",3 },17 {
"4",4 },18 {
"5",5 },19 {
"6",6 },20 {
"7",7 },21 {
"8",8 },22 {
"9",9 }23 };24 bool isNegative = false;25 res = 0;26 if (!String.IsNullOrEmpty(str))27 {28 //符号位29 if (str.Contains("-"))30 {31 isNegative = true;32 str = str.Replace("-", "");33 }34 //小数位35 if (str.Contains("."))36 {37 //暂时先不进行四舍五入38 str = str.Substring(0, str.IndexOf("."));39 }40 char[] nums = str.ToArray();41 try42 {43 for (int i = 0; i < nums.Length; i++)44 {45 46 int n = numDic[nums[i].ToString()];47 if (res != 0)48 res = res * 10 + n;49 else50 res = n;51 }52 }53 catch54 {55 return false;56 }57 if (isNegative)58 res=-res;59 return true; 60 }61 return false;62 }

运行结果:

转载于:https://www.cnblogs.com/ecake/p/8110146.html

你可能感兴趣的文章
《Android 源码设计模式解析与实战》——第2章,第2.1节单例模式介绍
查看>>
vaadin charts 使用
查看>>
我是何娇娇
查看>>
基于MaxCompute的图计算实践分享-Resolver简介
查看>>
《C语言及程序设计》实践项目——发现Bug
查看>>
CSS 规范
查看>>
Go知识点记录
查看>>
Sql Server 强制大小写区分方法
查看>>
经典设计模式——单例模式
查看>>
表单元素——checkbox样式美化
查看>>
理解矩阵乘法
查看>>
centos 5.4 上安装 Oracle11g R2 RAC (ASM)
查看>>
【原创】如何查看某进程下运行的线程
查看>>
HTML代码简写法:Emmet和Haml
查看>>
[数据库] Navicat for Oracle基本用法图文介绍
查看>>
算法系列15天速成——第一天 七大经典排序【上】
查看>>
Xcode调试LLDB
查看>>
泛函编程(24)-泛函数据类型-Monad, monadic programming
查看>>
OEA中的AutoUI重构(3)- 评审会议后的设计
查看>>
Java虚拟机详解04----GC算法和种类【重要】
查看>>