(c#)对16进制数的加减

操作16进制的数据,对它进行基础的加减操作,梳理了两个不同思路的方法,记录一下。

一、方法1如下:

cs 复制代码
// <summary>
// 对十六进制数做加法,方式一
// </summary>
// <param name="iNum">要加多少(十进制)</param>
public string AddHex(int iNum)
{
      for(int i = 0; i < iNum; i++)
      {
           string strHex = "00FF00FF0001";
           string strHexLower = strHex.ToLower();
           int  iLocation = 11;
           char[ ]  ch = strHexLower.toCharArray();
           char  cTemp = ++ch[iLocation];
           while(cTemp > 'f')
           {
                ch[iLocation] = '0';
                iLocation--;
                ch[iLocation]++;
                cTemp = ch[iLocation];
           }
           if(cTemp > '9' && cTemp < 'a' )
           {
                ch[iLocation] = 'a';
           }
           else
           {
                ch[iLocation] = cTemp;
           }
           strHexLower = String.Concat(ch);

           return  strHexLower.toUpper();
       }
}

二、方法2如下:

cs 复制代码
// <summary>
// 对十六进制数做加法,方式二:
// </summary>
// <param name="iNum">要加多少(十进制)</param>
public string AddHex(int iNum)
{
     //int32数据类型范围为2的31次方(10位数,2开头); long(64位)数据类型范围为2的63次方(19位,9开头)
     string strHex = "00FF00FF0001";

     //int64.parse()是将一个字符串转化为64位整数类型;
     //strHex是输入的字符串;
     //System.Globalization.NumberStyles.HexNumber表示strHex这个字符串是十六进制格式的字符串
     int64  iHex10 = int64.parse( strHex , System.Globalization.NumberStyles.HexNumber );

     iHex10 = iHex10 + iNum;

     //iHex10是要转换的整数
     //16表示转换为16进制
     //这行代码表示,将 iHex10转换为16进制表示
     return Convert.ToString( iHex10 , 16 );
}
相关推荐
IronMurphy2 小时前
【算法四十三】279. 完全平方数
算法
墨染天姬2 小时前
【AI】Hermes的GEPA算法
人工智能·算法
papership2 小时前
【入门级-数据结构-3、特殊树:完全二叉树的数组表示法】
数据结构·算法·链表
weixin_520649872 小时前
WinForm数据展示组件ListView
c#
smj2302_796826522 小时前
解决leetcode第3911题.移除子数组元素后第k小偶数
数据结构·python·算法·leetcode
Beginner x_u3 小时前
链表专题:JS 实现原理与高频算法题总结
javascript·算法·链表
_深海凉_6 小时前
LeetCode热题100-寻找两个正序数组的中位数
算法·leetcode·职场和发展
旖-旎7 小时前
深搜练习(电话号码字母组合)(3)
c++·算法·力扣·深度优先遍历
谭欣辰7 小时前
C++快速幂完整实战讲解
算法·决策树·机器学习
Mr_pyx7 小时前
【LeetHOT100】随机链表的复制——Java多解法详解
算法·深度优先