字符和字符串 在Java中,字符和字符串是两个不同的类型。
要想查找数字,字母或数字,空白是很简单的,因为已经有了对应这些字符集合的元字符,但是如果你想匹配没有预定义元字符的字符集合(比如元音字母 a,e,i,o,u),应该怎么办?很简单,你只需要在方括号里列出它们就行了,像[aeiou]就匹配任何一个英文元音字母,[.?!]匹配标点符号(.或?或!)。我们也可以轻松地指定一个字符范围,像[0-9]代表的含意与\d就是完全一致的:一位数字;
如果你想查找元字符本身的话,比如你查找.,或者*,就出现了问题:你没办法指定它们,因为它们会被解释成别的意思。这时你就得使用\来取消这些字符的特殊意义。因此,你应该使用\.和\*。当然,要查找\本身,你也得用\\。例如:deerchao\.net匹配deerchao.net,C:\\Windows匹配C:\Windows。
2.3.3 非ASCII字符对于剩余的非ASCII字符,是使用实际的Unicode字符(比如∞),还是使用等价的Unicode转义符(比如\u221e),取决于哪个能让代码更易于阅读和理解。Tip: 在使用Unicode转义符或是一些实际的Unicode字符时,建议做些注释给出解释,这有助于别人阅读和理解。例如:String unitAbbrev = "μs";
2.3.1 空白字符除了行结束符序列,ASCII水平空格字符(0x20,即空格)是源文件中唯一允许出现的空白字符,这意味着:所有其它字符串中的空白字符都要进行转义。制表符不用于缩进。
一般情况下,当我们处理字符时,我们用原始数据类型 char。 示例char ch = 'a';// Unicode for uppercase Greek omega characterchar uniChar = '\u039A'; // an array of charschar[] charArray ={ 'a', 'b', 'c', 'd', 'e' };然而在开发中,我们会遇到需要使用对象而不是原始数据类型的情况。为了达到这个需求。Java 为原始数据类型 char 提供了包装类 Character。
字节流继承于InputStream OutputStream字符流继承于InputStreamReader OutputStreamWriter字符流使用了缓冲区 (buffer),而字节流没有使用缓冲区底层设备永远只接受字节数据字符是字节通过不同的编码的包装字符向字节转换时,要注意编码的问题
关注时代Java