首页 > 解决方案 > 奇怪的场景 Convert.ToChar(integer) or (char)integer

问题描述

我有以下情况。

Console.WriteLine(Convert.ToChar(65)); // Gives 'A'

Console.WriteLine(Convert.ToChar(65) + 1); // Gives 66; Expectation was 'A1'

Console.WriteLine(Convert.ToChar(65) + "1"); // Gives 'A1'

这是为什么?我想要第三种情况。

标签: c#

解决方案


您得到 66 而不是 A1 的原因是因为您将 char 添加到整数。如果您将字符串添加到 char,那么它只会返回一个字符串。

有关 char 的文档char 关键字用于声明 System.Char 结构的实例,.NET Framework 使用该结构来表示 Unicode 字符。Char 对象的值是 16 位数字(序数)值


推荐阅读