首先, 我们常用的字符的编码如下:
字形 | Unicode | HTML | HTML / XML | TeX | Windows 字元编码 |
---|---|---|---|---|---|
连字曁减号 (HYPHEN-MINUS) | - | U+002D | (无) | - | - |
波浪号 (TILDE) | ~ | U+007E | (无) | - | (无) |
连字号 (HYPHEN) | ‐ | U+2010 | (无) | ‐ 或 ‐ |
(无) |
减号 (MINUS SIGN) | − | U+2212 | − |
− 或 − |
(无) |
数字线 (FIGURE DASH) | ‒ | U+2012 | (无) | ‒ 或 ‒ |
(无) |
连接号 (EN DASH) | – | U+2013 | – |
– 或 – |
-- |
破折号 (EM DASH) | — | U+2014 | — |
— 或 — |
--- |
水平线 (HORIZONTAL BAR | ― | U+2015 | (无) | ― 或 ― |
(无) |
减号和连字符不是同一个字符, 同时存在 连字曁减号 (HYPHEN-MINUS)
那么我们来看下键盘输入的字符:
> println Integer.toHexString((int)"-".charAt(0))2d
此处的 2d 即为 \u002d
, 同理我们将此转为字符串:
> println Integer.toHexString((int)"-".charAt(0))> > String data = "\u002d";> println data2d-
从上述代码中, 我们看出平时我们键盘输入的是: 连字曁减号 (HYPHEN-MINUS)
如果你想了解更多关于这些字符的知识可以参看下面链接:
- 连接号 - 维基百科,自由的百科全书
https://zh.wikipedia.org/wiki/%E8%BF%9E%E6%8E%A5%E5%8F%B7
- 英文破折号、连接号、连字符、负号的区别,注意事项和输入方法 - 知乎
https://zhuanlan.zhihu.com/p/40864032
- Java Internationalization: Converting to and from Unicode
http://tutorials.jenkov.com/java-internationalization/unicode.html
- Unicode编码转换 - 站长工具
http://tool.chinaz.com/tools/unicode.aspx