4.4Java数据类型划分(字符型)
字符型
虽然在开发之中会使用到字符型的概念,但是真正去操作字符型的情况并不多。
字符型用char进行表示,而且使用单引号“'”来声明字符变量的内容,同时字符型可以与int相互转换。
范例:观察字符型
public class TestDemo {
public static void main(String args[]){
char a = 'A' ; //定义了字符
System.out.println(a);
}
}
但是在整个字符型的处理之中,最麻烦的部分在于其可以与int互相转换。所有的字符在程序之中都是通过编码描述的,所以char的变量变为int内容的时候 ,其所包含的就是编码。
范例:观察编码的出现
public class TestDemo {
public static void main(String args[]){
char a = 'A' ; //定义了字符
int num = a ; //将字符变为int型
System.out.println(num);
}
}
常用范围:
大写字母(A-Z):65(A)~90(Z)
小写字母(a-z):97(a)~122(z)
字符数字('0'~'9'):48('0')~57('9')
范例:实现大写字母变小写字母(大写和小写字母之间差了32个长度)
public class TestDemo {
public static void main(String args[]){
char a = 'A' ; //定义了字符
//字符变量 + int常量 = int类型
int num = a + 32; //将字符变为int型
System.out.println(num);
//需要将int的内容转换为char类型,强制转换
char x = (char)num ; //强制转换
System.out.println(x);
}
}
实际上各个语言都有相似的编码,而之前在使用其他语言的使用所使用的编码为ASCII码,但是java中使用的并不是ASCII码,而是UNICODE编码,这种编码包含有ASCII码的部分内容。但是它所包含的编码又多于ASCII码。同时UNICODE使用十六进制编码,这个编码可以保存任何文字信息,包括中文。
范例:保存中文字符
public class TestDemo {
public static void main(String args[]){
char a = '林' ;
int num = a + 32 ;
System.out.println((char)num);
}
}
正因为Java中对于字符的特性支持比较好,所以还有另外一类神奇的用法。
范例:神奇的Java
public class 程序类 {
public static void main(String args[]){
int 变量1 = 10 ;
int 变量2 = 10 ;
int 计算结果 = 变量1 * 变量2 ;
System.out.println(计算结果);
}
}
这样一来就打破了之前的命名标识符,但是强烈建议,不要用