JAVA基础学习笔记02

1、数据类型的概述和分类

  • A:为什么有数据类型
    Java语言是强类型语言,对于每一种数据都定义了明确的具体数据类型,在内存中分配了不同大小的内存空间。
  • B:Java中数据类型的分类
    ① 基本数据类型 ② 引用数据类型
  • C:基本数据类型分类(4类8种)
    ① 整数型
    * byte 占一个字节 -128到127
    * short 占两个字 -2^15 ~2^15-1
    * int 占四个字节 -2^31 ~2^31-1
    * long 占八个字节 -2^63 ~2^63-1
    ② 浮点型
    * float 占四个字节 -3.403E38~3.403E38 单精度
    * double 占八个字节-1.798E308~1.798E308 双精度
    ③ 字符型
    char 占两个字节 0 ~ 65535
    ④ 布尔型
    boolean: thrue/false

2、使用变量的注意事项

① 作用域问题
同一个区域不能使用相同的变量名
② 初始化值问题
局部变量在使用之前必须赋值
③ 一条语句可以定义几个变量
int a,b,c…;

3、数据类型转换之隐式转换

① int + int -> int ② byte + int -> int
取值范围小的数据类型与取值范围大的数据类型进行运算,会先将小的数据类型提升为大的,再运算。

4、数据类型转换之强制转换

强制转换格式:b = (byte)(a + b)
注意事项: 如果超出了被赋值的数据类型的取值范围得到的结果会与你期望的结果不同。

5、面试题至变量相加和常量相加的区别

题:看下面的程序是否有问题,如果有问题请指出并说明理由。
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了

6、字符和字符串参与运算

System.out.println("hello"+'a'+1);
System.out.println('a'+1+"hello");

输出结果:helloa1 和 98hello
注: 任何数据类型用 + 与字符串相连接都会形成新的字符串。

7、算术运算符的基本用法

* A:什么是运算符
 就是对常量和变量进行操作的符号。
* B:运算符的分类
 算术运算符,赋值运算符,比较(关系或条件)运算符,逻辑运算符,位运算符,三目(元)运算符 
* C:算数运算符有哪些
  +,-,*,/,%,++,-- 
* D:注意事项:
  a:+号在java中有三种作用,代表正号,做加法运算,字符串的连接符
  b:整数相除只能得到整数。如果想得到小数,必须把数据变化为浮点数类型
  c:/获取的是除法操作的商,%获取的是除法操作的余数
 * %运算符(求余):
	* 当左边的绝对值小于右边绝对值时,结果是左边
	* 当左边的绝对值等于右边或是右边的倍数时,结果是0
	* 当左边的绝对值大于右边绝对值时,结果是余数
	* %运算符结果的符号只和左边有关系,与右边无关
	* 任何一个正整数%2结果不是0就是1可以用来当作切换条件 

8、算术运算符 ++ 和 - - 的用法

①:单独使用:放在操作数的前面和后面效果一样。
②:参与运算使用:放在操作数的前面(++a/ --a),先自增或者自减,然后再参与运算。放在操作数的后面(a++/ a-- ),先参与运算,再自增或者自减。
面试题: 问哪句会报错,为什么 ?
byte b = 10;
b++;
b = b + 1;
答:第三句会报错。b++ 时,会 b = (byte)(b+1);而b = b+1时,byte类型的b和int类型的1相加会将byte类型的b提升精度为int类型,所以两个int类型的相加为int类型,会造成最后结果精度的损失

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值