Java基础知识学习笔记一

Java的核心优势:就是跨平台

JDK:java开发工具包

JRE:java运行时环境  这里一般JDK包括JRE,JRE包括JVM

JVM:java虚拟机

Path配置:执行命令的路径,执行dos命令时(命令窗口),系统会在path变量寻找命令对应可以执行的文件

Classpath配置:JDK5.0以上(JDK5还是应该配置)版本可以不用配置(用于寻找类文件)

Dos命令:cd 改变目录  dir 显示目录下的文件信息  Tab 补齐命令

JAVAC 编译java源代码(javac hello.java)  java 执行class文件(java hello)

Java对大小写敏感:区分大小写 a与A类似

标识符:(主要用于变量、类名、方法名)以字母、下划线、美元$开头,其它部分可以有数字构成(#不能出现在标志符),不可以是java关键字

注意:java可以用汉字作为标志符,这里是因为java内部采用Unicode字符集(2字节表示)

Java是强类型语言:每个变量都必须声明类型

 Java基础知识学习笔记一

如果整数数据大小没有超过byte、short、char表示范围,他们之间可以互相转换,并且int型数据也能转换到对应类型。

Int转long型:Long型变量值超过了int表示的范围的数,需要在数的后面加上L标记,其余可以自动转换。

Java默认进制类型为十进制

声明八进制:在数字前面加上一个0(数字0)

16进制:以0x开头(0为数字0)

转换进制:Integer中有相应的toBinaryString(int)、toHexString(int)

浮点型数字

Java浮点数类型常量有两种表示方式:1.十进制数形式 3.14  314.0  2.科学计数法  314e2(31400)

浮点数值默认为double类型,要将其变为float类型,需要在数字后面加F。但是floata=3没有问题,这是int向float转(自动类型转换)

Float类型为单精度浮点数,尾数可以精确表示7位有效数字

Double类型为双精度浮点数,数值精度可表示float的两倍

Float 4字节  正负3.4*10^38

Double 8字节  正负1.8*10^308

注意:浮点数存在舍入误差,很多数字不能精确表示,如果需要进行不产生舍入误差的精确数字计算,需要使用BigDecimal(银行使用),同时避免在比较中使用浮点数。

Long型超过8个字节,可以用BigInteger。

字符型:char类型用来表示在Unicode编码表中的字符。

Java内部采用Unicode字符集(0-65535)

转义字符:’\’ ‘\t’制表符    ‘\n’换行     ‘’表示字符常量

char是在0-65535范围运算时直接当做整数运算。可以把这个范围的数直接转成char

String类:java中的字符串

自动类型转换:

  Java基础知识学习笔记一

说明:1容量小(表示范围)的数据类型(布尔除外)可以自动转换为容量大的数据类型

     2.(特例)数字在byte、short、char范围之类可以直接赋值,但是对于定义的int变量不可以。

     3.实线表示不会损失精度,虚线表示会损失精度

      4.float结构是1个符号位,8个指数位,23个尾数。Int类型数据32位都是精确位。Float却只有24位,所以会丢失精度。

强制类型转换:将表示范围大的给小的,如果此时超过了目标类型表示范围,会发生截断,没有意义的值

运行时类型提升问题:先转型才能不溢出 long a=4*5*8.这里运算出来是int,可能会溢出,然后才会转到long型,所以可以在其中一个加上L。表示long型。

IDK7.0新特性

1.    二进制整数:int a = 0b111001010(直接操作位数上的值,比如权限)

2.    下划线数字分割符:写一些较长的数字,使用下划线,容易让人看懂。