前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Java-char类型详解

Java-char类型详解

原创
作者头像
老九学堂-小师弟
修改2019-09-20 18:06:05
2.3K0
修改2019-09-20 18:06:05
举报
文章被收录于专栏:编程语言xuetang编程语言xuetang

char是Java中的保留字,与别的语言不同的是,char在Java中是16位的,因为Java用的是Unicode。不过8位的ASCII码包含在Unicode中,是从0~127的。

但是English,Spanish,German, French根本不需要这么表示,所以它们其实采用ASCII码会更高效。这中间就存在一个权衡问题。

因为char是16位的,采取的Unicode的编码方式,所以char就有以下的初始化方式:

//字符,可以是汉字,因为是Unicode编码

char c = 'c';

//可以用整数赋值

char c = 十进制数,八进制数,十六进制数等等;

//用字符的编码值来初始化

char c = '\u数字';

关于char占几个字节的问题

1.“字节”是byte,“位”是bit ;

2.1 byte = 8 bit ;

char 在Java中是2个字节。Java采用unicode,2个字节(16位)来表示一个字符。

char类型赋值

char a = 'a'; //任意单个字符,加单引号。

char a = '中';//任意单个中文字,加单引号。

char a = 111;//整数。0~65535。十进制、八进制、十六进制均可。输出字符编码表中对应的字符。

注:char只能放单个字符。

char运算

char类型是可以运算的因为char在ASCII等字符编码表中有对应的数值。

在Java中,对char类型字符运行时,直接当做ASCII表对应的整数来对待。

示例:

char m = 'a';

char m = 'a' + 'b';//char类型相加,提升为int类型,输出对应的字符。

int m = 'a' + 'b';//结果是195。//195没有超出int范围,直接输出195。

char m = 'a' + b;//会报错。//因为b是一个赋值的变量。

char m = 197;//输出字符编码表中对应的字符。

char m = '197';//会报错。//因为有单引号,表示是字符,只允许放单个字符。

char m = 'a' + 1;//输出结果是b。//提升为int,计算结果98对应的字符是b。

总结

用单引号''标识,只能放单个字符。

char + char,char + int——类型均提升为int,附值char变量后,输出字符编码表中对应的字符。 更多干货笔记关注微信公众号 : 老九学堂

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档