java基础知识(一)

	数据类型
	     java的数据类型包括了基本数据类型和引用数据类型,其根本区别就是其内容是存储于堆还是
	存储在栈中。栈数据是共享的,即多个变量赋值相同时则为同一地址,而堆是一个动态存储
	的空间,是存储对象和数组的地方,而他们的引用变量还是存储在栈中的,而这个引用变量可以理解为
	指针(当然这个变量并不是非得要定义的,也可以直接new对象不声明引用变量)。

java的数据类型
java语言对数据类型的处理是’'强类型"的方式,因此在定义的时候,一定会确定数据的类型(当然很多时候也许是系统默认的如int和double),当在不同类型的值之间进行操作的时候就会涉及到类型转换。
1、自动转换(隐式转换)也就是在数据类型兼容的情况下类型范围扩大。
2、强制类型转换,前提也是数据类型兼容,要在值之前加上类型声明,可能会造成精度缺失。

常见的数据陷阱
1、((int)(char)(byte)-1)。
2、不是所有小数都可以用二进制浮点数来精确表示,用BigDecimal类(对象是字符串)可以解决这个问题。
3、基本数据类型都是有自己的取值空间,应该合理运用。

	关于语句控制结构分支结构if、if...else、if...else if...else、switch以及循环结构while、
do...while和for(;;)因为和c、python等大部分语言一样过于基础,在此不作赘述,不熟练的读者因多加
练习达到自如使用。

这里简答的补充一点计算机的通用知识
十进制的表示可以为:30000 = 3*10^4 + …
因此二进制和十六进制可以用类似的方式转化为10进制
十进制转化为二进制则可以则可以通过求余方式获得

事实上在计算机中二进制和十六进制完全是等价的,通常为了一定的可读性,我们更习惯用十六进制来表示计算机机器码,而16刚好是2的4次方,只需要把4位二进制放在一起,就转化为了一个十六进制。

原码、反码、补码
原码:(人最容易理解的表示方式)
[+1] 原 = 0000 0001
[- 1] 原 = 1000 0001
反码:针对负数,除符号位按位取反
补码:针对负数,反码+1
单纯的原码计算机是没有办法计算的,因为计算机并没有简单识别符号位的方法,所以引入了反码和补码巧妙的解决这个问题

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值