Java基础语法

基础语法

1代码注释

代码注释是码代码中十分重要的一环,能够有效地减少理解代码的时间,提高码代码的效率,养成良好的码代码的习惯是一个优秀的程序员不可或缺的一步。

 

2数据类型

Java是一种强类型语言,要求变量的使用要严格符合规定,所有变量都必须先定义后才能使用,更安全,但速度会有些下降。

Java的数据类型分为两大类

  1. 基本数据类型

    • 整数类型:byte(1个字节)、short(2个字节)、int(4个字节)、long(8个字节)

    • 浮点类型:float(4个字节)、double(8个字节)

    • 字符类型:char(2个字节)

    • boolean类型:占“一位”,其值只有true和false两个

    注意:long类型要在数字后面加L;float类型要在数字后面加F;String不是关键字,它是一个类。

    位与字节

    • 位(bit):是计算机内部数据存储的最小单位

    • 字节(byte):是计算机中数据处理的基本单位,习惯上用大写的B来表示

  2. 引用数据类型

    • 接口

    • 数组

  3. 整数拓展

    • 有些进制有特定的表示方法

    • 二进制前面加0b、十进制正常、八进制前面加0,十六进制前面加0x

    • 10—>10 ; 010—>8 ; 0x10—>16

  4. 浮点数拓展

    • 有限的、离散的、具有舍入误差的特性、大约性,不要用于比较

    • 对于上面的f和d,看似一样,比较后却为false,所以不要用浮点数进行比较,经典的银行用什么来表示钱的问题,用一个类BigDemical。

  5. 字符拓展

    • 所有的字符本质还是数字,Unicode的编码:2字节—>65536

    • 上面这个\u为转义字符中的一个,将后面的十六进制数字通过某些方法找到其对应的符号,上面这个最后会输出字母“a”。

3类型转换

  1. 转换过程,强制转换(高到低—>再高的前面加个括号并加低级的关键字)如:

    • 打印后却发现i为128,b为-128,该现象的原因为内存溢出。

  2. 当是低到高时,为自动转换,不需要在前面加个括号并加关键字。

  3. 不能对布尔值进行转换,毕竟是位

  4. JDK7新特性,数字之间可以用下划线进行分割,如:

    • 10000000=10_000_000,且输出的时候,下划线并不会被输出。

    • 溢出的问题使得乘积为负数,且记

 

4变量

变量顾名思义是可以变化的量,可以将其理解成空间(内存),当你定义了一个变量,就拥有了一个空间,这个空间想放什么都可以,只要符合一定的规则。

变量的命名:使用首字母小写和驼峰原则,如:lastName

类名:使用首字母大写和驼峰原则,如DemoTest01

方法名:首字母小写和驼峰原则

变量分为三种类型:

1. 局部变量:必须声明和初始化值,只在所包含于的中括号中有效
2. 实例变量:从属于对象;可以不初始化,如果不自行初始化,则会为默认值;所有的数值类型默认值为0或0.0,布尔类型为false,除了基本类型,其它默认值都是null
3. 类变量:跟实例变量一样,不过这个变量之前加了一个static,从属于类,跟着类一起出来,一起消失

5常量

初始化后不能再改变值!不会变动的值。

注意:static final和final static一样,修饰符不存在先后顺序。

一般常量名的字母都用大写字母表示。

6基本运算符

注意:

由上可知,操作数中,如果里面有long类型,结果为long类型,如果没有,不管里面有没有int类型,结果都为int类型;同理,有double则结果为double类型。

注意:幂运算的特殊处理

Java中不能用2^3这种写法,而需要调用数学类Math,其中2^3写为Math.pow(2,3)。

 

7位运算

&—>与、|—>或、^—>异或、~—>非(取反)

一道面试题:

用位运算符号(<<;>>)与底层直接打交道,速度极快,直接运算出来

 

另外一道面试题:

假设上面的a为10,b为20。

实际的答案为:上面一条输出1020,下面一条输出30。

两个规则:

  1. 从左到右运算。

  2. 如果输出打印过程中出现了string类型,则其它后来的也转成string输出。

 

8三元运算符

 

9包机制

包的本质就是一个文件夹!

posted @ 2021-03-05 10:20  Pink_Bird  阅读(45)  评论(0)    收藏  举报