大写与标题之间的区别

bvd*_*vdb 18 java title-case unicode

uppercase和之间的区别是什么titlecase. 坦率地说,我以前从未听说titlecase过.

在java中,两者都有单独的方法:

  • Character.isTitleCase(char)
  • Character.isUpperCase(char)

有些网站将其定义如下:

TitleCase:匹配将大写字母与小写字母组合在一起的字符,例如Nj和Dz

但必须有更多:该isTitleCase(char)方法只接受1个字符.所以 - 如果是这种情况 - 那么这个方法至少需要2个字符.

Glo*_*del 17

它只接受一个Unicode字符.事实证明,DŽ实际上只有一个字:看看它是如何显示等宽字体:?.标题版本为Dž,小写版本dž也存在.

  • @bvdb发生这种情况的原因是与发生此类事件的遗留编码的往返兼容性.例如,在MacRoman编码中,字节0xDE映射到U + FB01`LATIN SMALL LIGATURE FI`(所以是**fi**字符),字节0xDF映射到U + FB02`LATIN SMALL LIGATURE FL`(a**fl**性格).往返保证允许您无损地从MacRoman转换为Unicode并再次返回MacRoman而不会发生任何变化. (4认同)

nxa*_*sdf 5

我知道之前已经回答过这个问题,但我只是添加一个非常快速的细分:

\n

组合字符:

\n
    \n
  • \xc7\x84 = 仅大写
  • \n
  • \xc7\x86 = 仅小写
  • \n
  • \xc7\x85 = 仅标题大小写
  • \n
\n

单个字符:

\n
    \n
  • D = 大写字母 AND 标题大写字母
  • \n
  • d = 仅小写
  • \n
\n