Java学习笔记(九)——数据类型和运算符
2017-11-08 21:46
549 查看
Java标识符
一句话解释:标识符不能是java关键字和保留字规则:必须以字母、_、$开头
关键字解释:java中具有特殊用途的单词被称为关键字,java所有的关键字都是小写的.
java中的50个关键字包括(enum是java5新增的特性):
类型分类
分为基本类型和引用类型。基本类型转换
自动类型转换(箭头左侧的可以自动转换成右侧的)基本类型及其包装类
https://blog.csdn.net/zh15732621679/article/details/79623414两道面试题
看到这里,会不会觉得这篇博文很扯,没有什么精华!以上的内容都是非常基础的内容。第一道:a=a+5和a+=5的区别
看以下的代码,声明a为byte类型,a与5相加,在网上看到有人问过这种问题,很多人的回答是:这两种加法是一样的,a+=5是简写而已,其实不然,a=a+5,这其中的5默认是int类型的,而a是byte类型的,int是4个字节的,byte是1个字节的,所以在计算的时候整个表达式的类型会提升为int,所以a+5的类型是int类型,而表达式左侧的a是byte类型的,结合上边我画的基本类型自动转换的图我们可以看到byte是可以自动转换为int的,而int转换为byte需要强转,所以将int类型的直接赋值给byte类型的变量会报错.
a+=5的计算过程是a=(byte)(a+5),所以不会出现左右值类型不一致而导致的错误.
结论:当表达式中的类型相同时,以上两种发方式效果是一样的,当表达式中出现多个类型时,a=a+5:低类型的会转换为高类型的,可能会导致左右值类型不同而报错的情况.a+=5会自动转换类型,不会出现左右值类型不同的情况,所以不会报错.推荐使用a+=5这种运算形式.
第二道:char型变量中是否可以保存中文?(提示:char类型的占2个字节,即16位)
可以保存中文,但是存在一些特殊的中文不可以保存.
原因:计算机中的存储都是转成二进制保存的,例如我们看到的电影,图片,听到的音乐等.保存字符相对来讲比较简单,我们给每一个字符都进行编号,计算机保存的时候可以将编号转换为二进制存储就可以.早期美国人给英文字符、数字、标点符号进行了编号,差不多有100个,所以1个字节(8位,支持256个字符编号)就可以了,这称为ASCII字符集,后来亚洲国家纷纷为本国文字进行编号,但是发现并不兼容,所以美国人又为世界上所有的书面语言的字符进行了统一编号,他们使用了两个字节(16位,支持65535个字符编号),这就是Unicode字符集。Java语言使用16位的Unicode字符集作为编码方式,所以只要是有Unicode编号的汉字就可以保存为char类型。
总结
不怕不知道就怕不知道,认真对待,就会有意想不到的结果!相关文章推荐
- Java学习笔记(二):数据类型和运算符(1)
- Java学习笔记(二):数据类型和运算符(2)
- 黑马程序员_java基础学习笔记01_变量,数据类型,运算符
- 【学习笔记三】最基本的JAVA基础[数据类型,运算符]
- Java基础学习笔记(一)环境变量配置,数据类型,运算符,控制语句,循环语句
- java学习笔记---数据类型、运算符和控制语句
- Java学习笔记001——学前准备、数据类型、运算符、流程控制语句
- NO2.Java学习笔记【关键字、类名、标识符、注释、变量与常量、数据类型、进制、运算符】
- Java学习笔记:数据类型和运算符
- Java学习笔记(三)之― Java中的变量、数据类型、运算符、类型转换
- Java学习笔记-基本数据类型与运算符
- Java学习笔记_001_数据类型与运算符
- 黑马程序员_Java常量、变量、数据类型和运算符的学习笔记
- [学习笔记]Java数据类型,变量和运算符
- 【疯狂Java讲义学习笔记】【数据类型与运算符】
- PHP学习笔记【8】--php数据类型介绍和php的运算符
- Java学习第二天 —— Java中的基本数据类型和运算符
- PHP学习笔记(23)PHP的数据类型与常量使用(24)PHP的运算符与表达式
- java学习笔记8_数据类型
- java核心技术学习笔记2---基本数据类型