我不确定这是Java还是Font问题,但是,我正在使用java.awt.Font类。
我正在使用java.awt.Font类将字形绘制到屏幕上。有些功能可以让我传递一个角色来绘制。有些函数可以让我传递一个代码点来绘制。
对于a-z,A-Z,0-9这样的字符,(char ch)和(int codepoint)之间的关系是什么?某些标准是否保证对于这些字母数字字符,代码点值只是char的ascii值?
谢谢!
答案 0 :(得分:2)
Codepoint是新的术语,相当于旧的“ASCII值”。由于现代编码超越了ASCII的7位,因此必须创造另一个词。但是大多数编码与ASCII的前127个字符/代码点相同 - 所以你在这里是安全的,除非你正在处理异乎寻常的IBM编码; - )
答案 1 :(得分:1)
char
是16位Unicode字符。一个char
可以表示\u0000
到\uffff
之间的任何Unicode字符,并且those characters的所有字符都属于该范围。有char
和其他采用code points的方法的原因是因为Unicode实际为1,114,112个字符分配空间,而char
是16位原语,只能代表前65,536个那些。