我正在开发一个只用大写字母处理的Java程序。在某些处理过程中,我使用的是这些大写字母的字符int
值。我理解大写字母的值在Unicode和ASCII中是相同的,但在引用这些int
值时,我应该说它们是Unicode值还是ASCII值?我只是想确保我在语言方面使用正确的术语。
答案 0 :(得分:2)
它应该被称为Unicode代码单元。 Java char
是一个16位Unicode代码单元,而不是32位Unicode代码点(最初认为Unicode是16位)。无论值是什么,它总是取16位。 ASCII是7位(如果考虑0填充/错误检查位,则为8)。因此,即使实际值相同,该术语也不完全适用。
答案 1 :(得分:1)
如果字符只是ASCII,则可以将它们称为ASCII。否则,您应该使用术语Unicode,正如您所说,它是ASCII的正确超集。请记住,即使您将引用作为ASCII,如果您将它们发送到期望真实的内容(
如果您的软件只处理ASCII范围内的代码点(并且见下文,这通常不是一个好主意),那么(对用户或文档中)“ASCII值”比“更容易” ASCII范围中的Unicode值“: - )
如果只处理ASCII范围内的大写字母,实际上误导会将您的值作为Unicode代码点引用到大写字母的上下文中。
现在任何新软件都应该用Unicode编写,并且包括大写字母不限于ASCII范围的事实。
例如,有一大块希腊字符接近 ASCII范围,具有大写和小写属性。 SpecialCasing.txt
文件显示了这些属性,并且主题上还有一个FAQ。
答案 2 :(得分:0)
根据the Unicode Glossary数字代码的正确和正确的字词是 代码点 。例如:
DIGIT ONE
的代码点是31 16 (49 10 ),通常写为U + 0031。POUND SIGN
的代码点是U + 00A3 LATIN SMALL LETTER I WITH DIAERESIS
的代码点是U + 00EF。GREEK SMALL LETTER MU
的代码点是U + 03BC。LATIN SMALL LETTER F WITH DOT ABOVE
的代码点是U + 1E1F。REPLACEMENT CHARACTER
的代码点是U + FFFD。MUSICAL SYMBOL DOUBLE FLAT
的代码点是U + 1D12B。MATHEMATICAL ITALIC CAPITAL R
的代码点是U + 1D445。EXTRATERRESTRIAL ALIEN
的代码点是U + 1F47D。 Supplementary_Private_Use_Area_B
块中指定的代码点。LATIN CAPITAL LETTER A
。ALIEN MONSTER
。依此类推。