Java-重学日记-基础知识-1-百炼成钢!

明确一下自己在大二的时候学的java时疏漏的知识点:

 

JDK:用于java开发环境。供开发者使用,较大

JRE:java运行环境。装了这个java的运行环境才算搭建成功(jvm基本实现+基本类库)

JVM:java虚拟机,识别出用java语言编译成的.class文件,并将之转换成裸机上相应操作系统的版本(瞒天过海-让java可以跨平台移植)

局部变量使用前记得初始化!

用final修饰的--符号常量。例如:PI

命名规范:所有名字见名知意。

类成员变量,局部变量,方法名:首字母小写和驼峰原则-》monthSalary,run(),runRun()

常量,大写字母/下划线MAX_VALUE 类名:首字母大写+驼峰原则:Man.GoodMan

 

JAVA的数据类型:

基本数据类型:数值型-(整形

                                                   (byte 1字节 short 2字节 int 4字节 long 8字节)

                                              浮点型(float 4字节 double 8字节)

                              布尔型 1位 字符型 char 2字节 )

引用数据类型:class string

 

---------------------------------------------------------------------------------------------------

基本数据类型的表示:014:console 出来是12    0x15:console出来是 21       0b1101 console出来是13

float:(浮点数)-特点是不精确。只能精确到小数点后7位 表示范围:+-3.403e38

由于绝大多数应用程序默认为double类型。所以浮点常量默认为double,若将默认的小数赋值给float需要在小数最后加一个F 例如:float f1=3.14F;

由于浮点数是不精确的,所以一定不要用于比较!(一定要比较的话。引入math里面的BigDecimal包的BigDecimal数据类型)

字符集|:java用的是unicode。

双引号括起来表示字符串。单引号是字符!

布尔值:因为只占一位,所以在java中必须用true false而不能用0和1,因此,布尔值的比较用if(true)就行了

算数运算符:因为其左右都需要操作数,因此叫做二元运算符

整数运算规则:有一个为long 结果为long 没有long 时 结果为int(无论其操作数为short和byte)

只有两个操作数为float 结果才为float,有double结果为double

扩展运算符:+= -= *=    ;这一类。

关系运算符:== != >     ;这一类。

怎么比较字符型?有个骚操作-》printLn(0+b);因为0是默认int型,所以默认转化成int了

syso(b>c);b,c都是字符。结果为boolean

& ! ^既是逻辑运算符,还是位运算符

例:

    &  用于逻辑运算符与时,其两端的比较数必须为布尔值!结果也为boolean  其优先级:非》与》或例:a||b&&c -> a||(b&&c);并不是严格按照从左到右的顺序的。

写这个例子之前,笔者女朋友曾经问过他一个关于c语言的问题,当时分不清&,|到底是用作位运算还是用作布尔判断,贼尴尬现在回看教程视屏不禁幡然醒悟,当&,|两端为布尔值时进行布尔值运算,两边为数值时进行二进制的位运算。

短路与&&:两个操作数其中一个为false,立即返回false 停止判断!

字符串:3+“4”=34;3+‘a’=100;

自动类型转化:并不是字节小的转化成字节大的。比方说:float(4字节) 和 long(8字节)-》实际上是从long 转化成float.其本质:从容量小的转化到容量大的。这里float容量更大。因此转化成float  

花了一个小时来查资料,为什么float用32位还能比64位的long表示的数值范围还大。

详情:

float:表示数据范围(这个38次方是怎么算出的??):-3.403E38~3.403E38 long类型的范围:2^64次方

float存储原理-》

如图:S代表符号位,表示其值的正负;E表示指数位,M表示小数位。欲表示值V=(-1)^s * M * 2^E

指数为8位范围-》+127 ~  -128(用二进制的指数表示)综上,其表示范围;23位小数部分加上8位指数部分。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值