JAVA-初步认识-第二章-字符类型的运算

来源:互联网 发布:淘宝女鞋 编辑:程序博客网 时间:2024/06/13 03:32

一. 第二章知识点脉络分析

第二章的题目就叫《JAVA语言基础》,先介绍了JAVA语言中,常见的基础知识点名词:关键字,标识符,注释,常量和变量,函数和数组。到目前为止,还没有完全学完。在现有的学习过程中,我们做一个知识点脉络分析。

前三个基础知识点,关键字,标识符和注释,只是介绍了书写的规则。后面的常量和变量是一个重点,而函数和数组压根就没有进行介绍。在常量和变量这个重点知识点中,无论是常量还是变量都是数据,从而我们在定义和使用变量时,会涉及不同类型的数据,这就需要我们对数据的类型进行仔细地分析。数据类型的分析又集中在基本数据类型和变量的运算上。先了解数据的类型,给变量的定义提供依据,接着对不同类型的变量进行运算。


前一小节我们讨论的主要是数值型变量间的运算,现在我们讨论基本数据类型中剩下类型的运算。

二. 字符型运算

这里说的是两类,字符型和布尔型,ch型和boolean型。而且听这意思,也都是将这里两种类型和数值型进行运算。对于boolean类型而言,无法同数值型进行运算。

这里讲解时,出现了一些无法理解的知识点,如下:


这里说,输出语句中的a既不是常量也不是变量,那么常量的组成是什么

这里谈论的字符型和数值型的运算,背后设计一个知识点,就是字符型在底层其实也是二进制编码,也可以充当数值。



上图显示,'a'+1的输出结果是一个数值98,这就很说明问题,背后涉及的是编码的知识点。字符型占据内存空间两个字节,1是int型,占据四个字节。在运算时,会存在一个自动类型提升。

原理的讲解:计算机只认识二进制,最初的时候,我们将二进制编码和数值挂上关系,这样一来计算机就可以识别生活中的数字了,当前是通过二进制编码过后的生活中的数字。思维发散一下,就是想办法让计算机识别生活中的文字,具体的操作就是利用二进制编码来代表字母,符号等。由于数字,字母等都是和二进制编码挂钩,自然计算机就可以将两者进行运算。(按道理说,boolean型也是二进制编码组成的,为什么不能和数值型进行计算?→唯一的解释就是这个编码表当初就没有将true和false编进去,或者说不在一个编码体系里面?至少美国的ASC码中数字和字母是在一张表中的。)

语句System.out.println('a'+1); 输出的是97,如果要输出字母,就必须强制类型转换一下,System.out.println((char)('a'+1)); 这样输出就是b。

这里需要记忆,‘A’,‘a’,和0背后的编码值,分别是65,97,48。


原创粉丝点击