[关闭]
@MRsunhuimin 2019-07-22T11:03:02.000000Z 字数 2540 阅读 215

java在家第二天(2019.07.15)

java基础

作者:孙慧敏

0. 标识符

    标识符:是指在程序中,我们自己定义内容。比如类的名字、方法的名字和变量的名字等等,都是标识符。

    标识符的硬性要求: 1.标识符必须是大小写的英文字母,数字,$,_
                    2.不能以数字开头 
                    3.不能是关键字
    软性要求: 1.类首字母及以后每个单词的首字母大写,其他字母小写
             2.变量\方法首字母小写,后面的单词首字母大写 
             3.常亮全部大写,中间用_隔开

1. 常量の变量

    常量:java程序中固定不变的数据

    常量分6种:整数常量\小数常量\字符常量\布尔常量\空常量\字符串常量

    变量:在程序中固定不变的量称为常量,可以发生变化的量称为变量

2. 八大基本数据类型の三大引用数据类型

2.1 基本数据类型有:

    四种整数类型(byte、short、int、long)
    两种浮点数类型(float、double)
    一种字符类型(char)
    一种布尔类型(boolean)

2.2 引用数据类型包括:

    类\接口\数组        

2.3 补充:

    8位:Byte(字节型)
    16位:short(短整型)、char(字符型)
    32位:int(整型)、float(单精度型/浮点型)
    64位:long(长整型)、double(双精度型)
    最后一个:boolean(布尔类型)


    java中默认数据类型:整数的默认数据类型是int,浮点数的默认数据类型是double,如果要表示一个long类型的整数后面要加一个L,如果要表示一个float类型的浮点数,后面要加一个F.

    字符串不是基本类型,而是引用类型

    null不能打印,会报错

    int的取值范围大概是正负21亿

    浮点型可能只是一个近似的值,并非精确的值

    数据范围与字节数不一定相关,例如float是4个字节,long是8个字节,但float的数据范围比long更广泛

3. 自动类型转换规则

    规则1:如果一个操作数为double型,则整个表达式可提升为double型

    规则2:满足自动类型转换的条件
        2.1 两种类型要兼容
            数值类型(整型和浮点型)互相兼容
        2.2 目标类型大于源类型: 
            例如:double 型大于 int 型

    char-->自动转换:byte-->short-->int-->long-->float-->double        

4. 强制类型转换规则

    在要转换类型前加括号,括号内为想要转换成新类型

缺点:

    1. 会损失精度,产生误差,小数点以后的数字全部舍弃。
    2. 容易超过取值范围。

5. 算数运算符

5.1 基本的算术运算

    +、-、*、/、%、++、--
    %:求余数
    /:取整数

5.2 复合算术运算符

    +=、-=、*=、/=、%=

    +=是一个运算符,运算时只会运算一次,并且带有强制类型转换的特点.

6. 关系运算符

    ==、!=、>、<、>=、<=

    =为赋值运算符,==为等于运算符

    关系表达式的结果为布尔值

    >、<、>=、<= 运算符的优先级别高于==、!=

    >、<、>=、<=运算符只支持数值类型的数据比较

7. 逻辑运算符

运算符 含义 运算规则
&& 短路与 两个操作数都是true,结果才是true
短路或 短路或 两个操作数一个是true,结果就是true
! 操作数为true,结果为false;操作数为false,结果为true

8. 条件运算符

    条件?表达式1:表达式2
    true->表达式1
    false->表达式2
    ###9.位运算符

9. 位运算符

    用来对二进制位进行操作,Java中提供了如下表所示的位运算符:位运算符中,除 ~ 以外,其余均为二元运算符。

    操作数只能为整型和字符型数据。

    C语言中六种位运算符:
    & 按位与
    | 按位或
    ^ 按位异或
    ~取反
    <<左移
    >>右移

10. 赋值运算符

    基本的赋值运算符是“=”。他的优先级别低于其他的运算符,所以对该运算符往往最后读取。

11. 运算符优先级

    1. 单目运算符包括 !   ++  --,优先级别高

    2. 优先级别最低的是赋值运算符

    3.可以通过()控制表达式的运算顺序,()优先级最高

    4.从右向左结合性的只有赋值运算符、三目运算符和单目运算符

    5.算术运算符 > 关系运算符 > 逻辑运算符

12.while循环

    while ( 循环条件 ) {

        循环操作
    }

while循环特点:先判断,再执行

13. do-while循环

    do {

        循环操作

    }while ( 循环条件 );

do-while循环特点:先执行,再判断

14.for循环

    for(参数初始化;条件判断;更新循环变量){

        循环操作

    }

for循环特点:先判断,再执行

15. 循环部分总结

    1. 需要多次重复执行一个或多个任务的问题考虑使用循环来解决

    2. 无论哪一种循环结构,都有4个必不可少的部分:初始部分、循环条件、循环体、更新循环变量

    3. switch语句中可接收的数据类型为 byte,short,int,char,枚举 jdk7以后可以接收字符串
15.1 for循环和while循环有什么区别?
    答:控制条件语句所控制的变量,for循环结束就不可以再访问到,while循环结束还可以访问到,如果需要继续使用就用while,不需要就使用for,for循环结束后变量就从内存中消失,可以提高内存的使用率.知道循环次数的情况下推荐使用for循环,不知道循环次数的情况下使用while.
15.2 三种循环的联系
    区别1:语法不同

    区别2:执行顺序 

        while 循环:先判断,再执行

        do-while循环:先执行,再判断

        for循环:先判断,再执行

    区别3:适用情况

        循环次数确定的情况,通常选用for循环

        循环次数不确定的情况,通常选用while或do-while循环

16. 多重循环

16.1 多重循环的使用

    注意:

        1. 各循环可互相嵌套

        2. 一般不超过三层

        3. 外层循环变量变化一次,内层循环变量要变化一遍

        4.外层循环控制行数,内层循环控制列数

16.2 break语句语法

    改变程序控制流:
        用于do-while、while、for循环中,可跳出循环而执行循环后面的语句

16.3 continue语句

    1. continue :只能用在循环里

    2. continue 作用:跳过循环体中剩余的语句而执行下一次循环

break和continue的对比

    使用场合:

        1. break常用于switch结构和循环结构中

        2. continue一般用于循环结构中

作用(循环结构中)

    1. break语句终止某个循环,程序跳转到循环块外的下一条语句

    2. continue跳出本次循环,进入下一次循环

    3. 双重循环亦如此 
添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注