我有以下 Java 代码,我正在尝试用 C# 重写。
byte b = ...;
int i = Character.digit((char)b, 16);
Run Code Online (Sandbox Code Playgroud)
C#中是否有相当于Character.digit的东西
http://docs.oracle.com/javase/7/docs/api/java/lang/Character.html#digit(char,%20int)
返回指定基数中字符 ch 的数值。
你必须手动实现它,如下所示:
public static int Digit(char value, int radix) {
if ((radix <= 0) || (radix > 36))
return -1; // Or throw exception
if (radix <= 10)
if (value >= '0' && value < '0' + radix)
return value - '0';
else
return -1;
else if (value >= '0' && value <= '9')
return value - '0';
else if (value >= 'a' && value < 'a' + radix - 10)
return value - 'a' + 10;
else if (value >= 'A' && value < 'A' + radix - 10)
return value - 'A' + 10;
return -1;
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2016 次 |
| 最近记录: |