Java中 char的初始化及占位
2016-03-14 10:19
260 查看
一:char的初始化
char是Java中的保留字,与别的语言不同的是,char在Java中是16位的,因为Java用的是Unicode。不过8位的ASCII码包含在Unicode中,是从0~127的。
Java中使用Unicode的原因是,Java的Applet允许全世界范围内运行,那它就需要一种可以表述人类所有语言的字符编码。Unicode。但是English,Spanish,German, French根本不需要这么表示,所以它们其实采用ASCII码会更高效。这中间就存在一个权衡问题。
因为char是16位的,采取的Unicode的编码方式,所以char就有以下的初始化方式:
char c='c'; //字符,可以是汉字,因为是Unicode编码
char c= 十进制数,八进制数,十六进制数等等; //可以用整数赋值
char c='\u数字'; //用字符的编码值来初始化,如:char='\0',表示结束符,它的ascll码是0,这句话的意思和 char c=0 是一个意思。
二:关于char占几个字节的问题如下:
1:“字节”是byte,“位”是bit ;1 byte = 8 bit ;
2:char 在java中是2个字节。
java采用unicode,2个字节(16位)来表示一个字符,也就是说一个char类型的变量可以存储一个汉字。(当然兼容ACSII码)
而ASCII码,是1个字节(8位)来表示一个字符。
通常gbk/gb2312编码是2个字节,utf-8编码是3个字节。
char是Java中的保留字,与别的语言不同的是,char在Java中是16位的,因为Java用的是Unicode。不过8位的ASCII码包含在Unicode中,是从0~127的。
Java中使用Unicode的原因是,Java的Applet允许全世界范围内运行,那它就需要一种可以表述人类所有语言的字符编码。Unicode。但是English,Spanish,German, French根本不需要这么表示,所以它们其实采用ASCII码会更高效。这中间就存在一个权衡问题。
因为char是16位的,采取的Unicode的编码方式,所以char就有以下的初始化方式:
char c='c'; //字符,可以是汉字,因为是Unicode编码
char c= 十进制数,八进制数,十六进制数等等; //可以用整数赋值
char c='\u数字'; //用字符的编码值来初始化,如:char='\0',表示结束符,它的ascll码是0,这句话的意思和 char c=0 是一个意思。
二:关于char占几个字节的问题如下:
1:“字节”是byte,“位”是bit ;1 byte = 8 bit ;
2:char 在java中是2个字节。
java采用unicode,2个字节(16位)来表示一个字符,也就是说一个char类型的变量可以存储一个汉字。(当然兼容ACSII码)
而ASCII码,是1个字节(8位)来表示一个字符。
通常gbk/gb2312编码是2个字节,utf-8编码是3个字节。
相关文章推荐
- java 对list 排序
- 接口与抽象类详解
- java web项目的打包与部署
- Java中上转型对象与下转型对象
- Eclipse启动不了问题总结
- myeclipse Available Memory is low问题解决方法
- java系统高并发解决方案(转载)
- java程序设计基础_陈国君版第五版_第十一章习题
- 多图详解Spring框架的设计理念与设计模式
- java保留两位小数
- 在Eclipses中查看JDK源码的方法
- JDK 的安装
- MyEclipse8.6 破解以及注册码
- Java字节流与字符流基本操作
- Hive基本操作 通过java连接
- spring
- java工程转web
- myEclipse生成文档Generate javadoc 报错java.nio.BufferOverflowException
- java基础学习第二天
- maven 项目(三) spring集成mybatis事务配置(扫描注解)