当前位置: 首页 > news >正文

网站建设保密协议书店铺运营

网站建设保密协议书,店铺运营,wordpress5.1,汉中疫情最新消息今天公布c#动态保留小数位数的数值格式化方法实例----从小数点后非零数字保留两位进行四舍五入 功能介绍代码案例输出结果封装扩展方法控制台调用 其他方法地址 功能介绍 1. 输入的数字是整数,则直接返回整数部分的字符串表示。 2. 如果输入的数字是小数,则执行…

c#动态保留小数位数的数值格式化方法实例----从小数点后非零数字保留两位进行四舍五入

  • 功能介绍
    • 代码案例
    • 输出结果
    • 封装扩展方法
      • 控制台调用
    • 其他方法地址

功能介绍

1. 输入的数字是整数,则直接返回整数部分的字符串表示。

2. 如果输入的数字是小数,则执行以下步骤:

    2.1 如果小数部分.后以".0"开头(例如:0.00013),需要动态计算显示,不允许固定保留小数位数。这意味着不能直接保留两位小数,因为无法确定后面有多少位0。直接保留会显示为0或者0.00

    2.2 如果小数部分不以".0"开头,直接进行四舍五入并保留小数位数。

该方法的目的是根据输入的数字进行判断和处理,使得最终输出的字符串满足上述保留小数的规则。

代码案例

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;namespace ConsoleApp4
{class Program{static void Main(string[] args){Console.WriteLine($"原始值:567--------转换后的值:{FormatNumber(567)}");Console.WriteLine($"原始值:0.00000196--------转换后的值:{FormatNumber(0.00000196)}");Console.WriteLine($"原始值:831.00002455--------转换后的值:{FormatNumber(831.00002455)}");Console.WriteLine($"原始值:76.008921--------转换后的值:{FormatNumber(76.008921)}");Console.WriteLine($"原始值:0.003333333--------转换后的值:{FormatNumber(0.003333333)}");Console.WriteLine($"原始值:0.54241218115613401401552902563902978171--------转换后的值:{FormatNumber(0.54241218115613401401552902563902978171)}");}/// <summary>/// 计算保留小数/// 1、整数:如果是整数则直接返回/// 2、小数:///     2.1小数点后以.0开头,需要动态计算显示,假如0.00013,直接保留两位岂不是0.00了,又不确定后面有多少位0,不允许固定保留小数位///     2.2小数点后不为.0开头,直接四舍五入保存/// 0.00001显示为0.00001/// 0.00000196显示为0.000002/// 76.008921显示为76.0089/// 831.00002455显示为831.000025/// 0.003333333显示为0.0033/// 0.54241218115613401401552902563902978171显示为0.54/// 567显示为567/// </summary>/// <param name="number"></param>/// <returns></returns>static string FormatNumber(double number){try{// 判断是否整数,如果是,直接返回整数部分if (number == Math.Floor(number)){return number.ToString("0");}else{// 获取小数部分double decimalPart = number - Math.Floor(number);// 转换小数部分为字符串string decimalPartString = decimalPart.ToString("0.##############################");// 找到小数点的位置int dotIndex = decimalPartString.IndexOf('.');// 计算小数部分的 ".0" 开头的零的数量int zeroCount = 0;for (int i = dotIndex + 1; i < decimalPartString.Length; i++){if (decimalPartString[i] == '0'){zeroCount++;}else{break;}}// 生成保留小数位数的格式字符串string formatString;if (zeroCount == 0){formatString = "0.00"; // 如果没有 ".0" 开头的零,保留两位小数}else{formatString = "0." + new string('#', 2 + zeroCount); // 否则,根据零的数量生成格式字符串}return number.ToString(formatString);}}catch (Exception ex){return number.ToString("0.##");}}}
}

输出结果

在这里插入图片描述

封装扩展方法


public static class FormatExtension
{public static string FormatNumber(this double number){try{// 判断是否整数,如果是,直接返回整数部分if (number == Math.Floor(number)){return number.ToString("0");}else{// 获取小数部分double decimalPart = number - Math.Floor(number);// 转换小数部分为字符串string decimalPartString = decimalPart.ToString("0.##############################");// 找到小数点的位置int dotIndex = decimalPartString.IndexOf('.');// 计算小数部分的 ".0" 开头的零的数量int zeroCount = 0;for (int i = dotIndex + 1; i < decimalPartString.Length; i++){if (decimalPartString[i] == '0'){zeroCount++;}else{break;}}// 生成保留小数位数的格式字符串string formatString;if (zeroCount == 0){formatString = "0.00"; // 如果没有 ".0" 开头的零,保留两位小数}else{formatString = "0." + new string('#', 2 + zeroCount); // 否则,根据零的数量生成格式字符串}return number.ToString(formatString);}}catch (Exception ex){return number.ToString("0.##");}}}

控制台调用

     double num = 2567.11233;Console.WriteLine(num.FormatNumber());

其他方法地址

.NET(C#)将十进制数四舍五入保留第一个非零小数(Math.Round())

如果有哪位前辈或同胞了解类似以上转换合适的方法、以及依赖包,可以说明下,一起学习进步,本次遇到记录一下~

http://www.ds6.com.cn/news/7816.html

相关文章:

  • 创办一个网站需要多少资金百度下载免费安装
  • 深圳网址网站建设公司公司网站优化方案
  • 制作动态网站的流程百度词条优化
  • h5模板免费哪里有网站推广优化
  • 教人做甜点的网站谷歌ads广告投放
  • 昆明网站建设哪家便宜足球世界排名国家
  • 淘宝客优惠券网站建设教程视频谷歌网站
  • 网站开发项目的部署seo优化培训班
  • 建筑网站图片在线网站seo诊断
  • 做平面设计去哪些网站找图重庆seo技术分享
  • 为什么做企业网站今日全国疫情一览表
  • wordpress文章样式专业网站优化培训
  • 北京cms建站系统百度搜索引擎广告投放
  • 网站建设改版公司宁波网站优化公司价格
  • 单位的网站的建设方案百度关键词首页排名服务
  • 政府网站建设进展情况优化的近义词
  • 新乡网站建设设计公司商务软文写作
  • 中国十大门窗品牌有哪些企业网站优化哪家好
  • 怎样在网站做咨询医生挣钱网络营销有哪些形式
  • 深圳高端网站开发南宁百度推广排名优化
  • 绵阳做网站优化河南郑州网站顾问
  • 网站建设狼雨哪里有学电脑培训班
  • 云南网站建设公司排行2023免费b站推广大全
  • 网站服务器在今日军事新闻头条最新
  • 评论给网站带来的益处镇江关键字优化品牌
  • 前几年做哪个网站能致富营销网络的建设
  • 外链博客网站广州:推动优化防控措施落地
  • 台州市网站建设网页模板之家
  • 做网站建设工资高吗做互联网推广的公司
  • 网站登录页面模板 下载上海seo顾问推推蛙