Java开发笔记(三十一)字符类型的表达
前面介绍的java编程,要么是与数字有关的计算,要么是与逻辑有关的推理,充其量只能实现计算器和状态机。若想让java运用于更广阔的业务领域,就得使其支撑更加血肉丰满的业务场景,而丰满的前提是能够表达大众熟知的人类语言和文字。对于英文世界来说,除了数字之外,编程语言起码还要支持abcd等大小写字母,以及常见的标点符号。由于现有的基本变量类型仅能表示各类数字与布尔值,因此要引入新的变量类型来存放字母和符号,这个新的类型被称作字符型char。
有别于其它的基本类型,一个具体的字符值必须用单引号包起来,这样才能区分数字数值与数字字符,而且变量名称和字符形式的变量值也不会弄混淆。譬如下面的代码示范了如何声明字符变量,以及如何把各类字符赋值给该字符变量:
// 声明一个字符变量,并对其赋值
char a = 'a';
system.out.println("a="+a);
// 字符包括英文字符,也包括中文字符
char tian = '田';
system.out.println("tian="+tian);
// 字符还包括数字字符,以及标点符号
char one = '1';
system.out.println("one="+one);
与其它类型相似,字符类型也有对应的字符数组char[]。除了类型名称变更,其它的用法与整型数组保持一致。下面是字符数组简单用法的代码例子:
// 声明一个字符数组,并对其初始化
char[] array = {'a', 'b', 'c'};
//char[] array = new char[]{'a', 'b', 'c'};
// 遍历字符数组中的每个字符
for (char item : array) {
system.out.println("item="+item);
}
虽然大部分的字母和符号都能直接书写自身字符,但是少数特殊符号没有对应的表现字符,包括制表符、回车符、换行符等等,此时必须通过某种格式的式子来表示这些特定字符。在java代码中,使用'\t'表达一个制表符,使用'\r'表达一个回车符,使用'\n'表达一个换行符。还有其它几个符号,尽管存在对应的标点,可是标点已经约定另有用途,比如两个单引号''用来包裹单个字符,两个双引号""用来包裹一串文本,反斜杆\则被用于表达换行符'\n'等等。因此,这几个特种标点只好另想办法,一样得在符号前面补充反斜杆,如'\''表达的是单引号字符,'\"'表达的是双引号字符,'\\'表达的是反斜杆字符。以上几种特殊符号的赋值代码示例如下:
// 下列是特殊字符的转义表达形式
char tab = '\t'; // 制表符
system.out.println("tab="+tab);
char enter = '\r'; // 回车符
system.out.println("enter="+enter);
char line = '\n'; // 换行符
system.out.println("line="+line);
char singlequote = '\''; // 单引号
system.out.println("singlequote="+singlequote);
char doublequote = '\"'; // 双引号
system.out.println("doublequote="+doublequote);
char reversetilt = '\\'; // 反斜杆
system.out.println("reversetilt="+reversetilt);
像上面通过添加反斜杆来表达特殊字符的方式,在编程语言里面称作“转义”,添加了反斜杆的字符形式被称为“转义符”。
更多java技术文章参见《java开发笔记(序)章节目录》
上一篇: 格式化输出、逻辑表达式和字符编码
下一篇: c/c++ 多线程 mutex的理解