常量的概述和使用
什么是常量:在程序执行的过程中其值不可以发生改变
Java中常量的分类:字面值常量和自定义常量
字面值常量的分类:字符串常量(用双引号括起来的内容)、整数常量(所有整数)、小数常量(所有小数)、字符常量(用单引号括起来的内容,里面只能放单个数字,单个字母或单个符号)、布尔常量(较为特殊,只有true和false)和 空常量(null)
不同进制数据的表现形式
二进制的数据表现形式:由0,1组成。以0b(b可以大写也可以小写)开头(JDK1.7版本可以表示二进制了)
八进制的数据表现形式:由0,1,…7组成。以0开头
十进制的数据表现形式:由0,1,…9组成。整数默认是十进制的
十六进制的数据表现形式:由0,1,…9,a,b,c,d,e,f(大小写均可)。以0x开头
原码反码补码
原码:就是二进制定点表示法,即最高位为符号位,“0”表示正,“1”表示负,其余位表示数值的大小。通过一个字节,也就是8个二进制位表示+7和-7,例如0(符号位)0000111和1(符号位)0000111
反码:正数的反码与其原码相同;负数的反码是对其原码逐位取反,但符号位除外。
补码:正数的补码与其原码相同;负数的补码是在其反码的末位加1。
变量的概述及格式
什么是变量:在程序执行的过程中,在某个范围内其值可以发生改变的量
变量的定义格式:数据类型 变量名 = 变量值;
为什么要定义变量:用来不断的存放同一类型的常量,并可以重复使用
数据类型的概述和分类
Java语言是强类型语言,对于每一种数据都定义了明确的具体数据类型,在内存中分配了不同大小的内存空间。
Java中数据类型有两种:基本数据类型和引用数据类型(数组对象)
基本数据类型分类(4类8种)
(1)整数型:byte 占一个字节 -128到127、short 占两个字 -2^15~2^15-1、int 占四个字节 -2^31~2^31-1、long 占八个字节 -2^63~2^63-1
(2)浮点型:float 占四个字节 -3.403E38~3.403E38 单精度、double 占八个字节-1.798E308~1.798E308 双精度
(3)字符型:char 占两个字节 0~65535
(4)布尔型:boolean boolean理论上是占八分之一个字节,因为一个开关就可以决定是true和false了,但是java中boolean类型没有明确指定他的大小
使用变量的注意事项
作用域问题:同一个区域不能使用相同的变量名
初始化值问题:局部变量在使用之前必须赋值
一条语句可以定义多个变量:int a,b,c...;
数据类型转换
隐式转换:取值范围小的数据类型与取值范围大的数据类型进行运算,会先将小的数据类型提升为大的,再运算
强制转换:byte变量 = (byte)(int变量);如果超出了被赋值的数据类型的取值范围得到的结果会与你期望的结果不同
面试题之变量相加和常量相加的区别
看下面的程序是否有问题,如果有问题,请指出并说明理由。byte b1 = 3;
byte b2 = 4;
byte b3 = b1 + b2;
/*
从两方面去回答这个题
b1和b2是两个变量,变量里面存储的值都是变化的,所以在程序运行中JVM是无法判断里面具体的值
byte类型的变量在进行运算的时候,会自动类型提升为int类型*/
byte b4 = 3 + 4;
//3和4都是常量,java有常量优化机制,就是在编译的的时候直接把3和4的结果赋值给b4了
char数据类型
char c = 97;0到65535
Java语言中的字符char可以存储一个中文汉字吗?为什么呢?
可以。因为Java语言采用的是Unicode编码。Unicode编码中的每个字符占用两个字节。中文也是占的两个字节,所以,Java中的字符可以存储一个中文汉字
算术运算符的注意事项
什么是运算符:就是对常量和变量进行操作的符号。
运算符的分类:算术运算符,赋值运算符,比较(关系或条件)运算符,逻辑运算符,位运算符,三目(元)运算符
算数运算符有* +,-,*,/,%,++,--
注意事项:
(1)+号在java中有三种作用,代表正号,做加法运算,字符串的连接符
(2)整数相除只能得到整数。如果想得到小数,必须把数据变化为浮点数类型
(3)/获取的是除法操作的商,%获取的是除法操作的余数
(4)%运算符:当左边的绝对值小于右边绝对值时,结果是左边;当左边的绝对值等于右边或是右边的倍数时,结果是0;当左边的绝对值大于右边绝对值时,结果是余数;%运算符结果的符号只和左边有关系,与右边无关;任何一个正整数%2结果不是0就是1可以用来当作切换条件
算术运算符++和--的用法
++:自加。对原有的数据进行+1
--:自减。对原有的数据进行-1
注意:
放在操作数的前面,先自增或者自减,然后再参与运算。
放在操作数的后面,先参与运算,再自增或者自减。