一、标识符与变量

        java程序的允许是需要占用内存资源的,在内存中可能存储着一些数据如姓名,学号等,随着业务功能的需求变化,存储的值也可能会发生变化,我们将存储值的容器称为变量;

        变量:变量是一个容器,是内存一个数据存储空间的表示,变量表示的值是可以随着业务的变化而变化的。

        变量的表示方式:变量类型  变量名  =  变量值;

        如:int num = 10;

               int 为变量类型

               num为变量名

               10为变量值

        如果程序需要使用这个变量,可以直接使用变量名来调用。

        我们将变量名称作为标识符,而标识符的命名是由规则的。

        Java中需要起名字的地方有项目名,类名,变量名,方法名……

        在Java中需要起名字的地方,统称为标识符,每个公司都会有自己的命名规则,但肯定会遵循以下的原则:        

        标识符命名规则:

                1:由大小写字母,数字,_,$组成

                2:数字不能作为标识符的开始;

                3:java中的关键字和保留字不能作为标识符:class,public,void--------已经有了特殊的含义,goto-保留字

                4:Java是严格区分大小写

        变量名的定义最好见名思意!

        常量:在程序运行中,有些值是不能被改变的,此时可以使用常量来表示,常量的命名规则遵循标识符规则。

        规则:使用final修饰的变量,称为常量

        注意:

        (1)常量名通常大写

        (2)不同字符使用下划线分隔

        (3)只能被赋值一次,通常定义时即对其初始化

二、数据类型

        Java中的数据类型可以分为基本数据类型和引用数据类型

       基本数据类型有八个--------记住

                整数4个:byte,short,int,long--------默认是int

                小数2个:double,float--------默认是double

                字符:char,用单引号

                布尔:Boolean

        引用数据类型:字符串-String(双引号),数组,集合,类,对象

三、键盘录入

        程序在运行的时候,如果需要用户输入数据的时候,徐娅使用Scanner类

        用法:

                1、创建Scanner对象

                2、使用这个对象,调用提供的方法

四、类型转化

        一种数据类型转换为另一种数据类型称作为数据类型的转化;类型转换分为自动类型转换和强制类型转换。

        自动类型转换:

                只要double参与的运算,都会自动转换为double类型

                两种数据类型要兼容(整数和小数)

                目标类型大于源类型,如double和int

        强制类型转换

                需要手动转换,可能会丢失精度(精准度)

                目标类型  变量名  =  (目标类型)  源类型

五、运算符

        1、赋值运算符

                变量名 = 变量值;

                变量值可以是一个表达式的结果:如两个数的和

        2、算数运算符

                基本的算术运算:+、-、*、/、%、++、--

                复合算术运算符:+=、-=、*=、/=、%=

        3、关系运算符

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

        4、逻辑运算符

运算符

含义

运算规则

&&

短路

两个操作数都是true,结果才是true

||

短路

两个操作数一个是true,结果就是true



操作数为true,结果为false

操作数为false,结果为true

        5、三元运算符/三目运算符/条件运算符

                条件?表达式1:表达式2

                注意:三元运算符的结果需要一个变量来接受

六、程序流程说明

        程序流程可以分为一下三种:

        顺序结构:程序从上向下逐行逐句执行,只能向下;

        分支结构:选择结构,判断语句

        循环结构:重复执行一段或一条语句

        1、if语句

                if语句主要用于分支结构,表示判断的意思,主要分为三种表现方式

                1:if语法

                        if一般用于单个判断,表示如果的意思;条件成立则会执行相应的代码

                        语法:

if(表达式){
    //代码块,当表达式为true时,才会执行这里的代码
    
}

                        流程图

java获得类变量名字 java如何获取变量的名字_java

                 2:if----else----

                        if----else---结构一般用于二选一的情况,如果if 成立,执行if的代码,否则执行else中代码块。

if(表达式){
    //代码块,当表达式为true时,才会执行这里的代码
}else{
    //表达式为false时,执行这里的代码
}

                        流程图

java获得类变量名字 java如何获取变量的名字_开发语言_02

         3:if----else  if----else

                多重if结构主要用于多重判断的情况,语法如下:   

if(表达式1){
    //表达式1为true时,执行这里的代码
}else if(表达式2){
    //表达式2为true时,执行这里的代码
}else if(表达式3){
    //表达式3为true时,执行这里的代码
}else{
    //所有条件都不满足的时候,会执行这里的代码
}

                if小结:

                一次判断用if语句

                两次判断(一个真一个假)用if--else语句

                两次以上判断使用if---else  if---else

                4、嵌套if

                嵌套if就是在if判断语句中还if判断的语句,嵌套if控制语句可以通过外层语句和内层语句的写作,增强程序的灵活性。

                语法如下;

if(条件1){
    if(条件2){
        代码块1 
    }else{
        代码块2
        }
}else{
    代码块3
}

        流程图如下:

        

java获得类变量名字 java如何获取变量的名字_数组_03

2、switch语句

        switch语句是一种选择语句,可以通过匹配某个条件,来执行某块代码

        

switch(){
    case 常量1:
        语句;
        break;//跳出switch语句
    case 常量2:
        语句2;
        break;
    case 常量3:
        语句3;
        break;
    default:
        语句;
}

        注意:表达式可以接受的类型有:int,short,byte,char,枚举类型,String---记住

        switch语句的特点:---记住

                switch用于多重分支且条件判断是等值判断的情况

                switch结束有两种情况:遇到break;执行到switch语句结束

                case和default是没有前后顺序的,但是执行时先执行case语句,如果没有符合的会执行default语句;Default语句一般是放在最后的

        3、switch语句和if语句比较---记住

                相同点:都可以用来处理多分支结构

                不同点:if多用于区间判断;switch用于等值条件的判断

                用switch能做的,用if都能做,但反过来则不行

七、循环

        常用的循环结构有三大类:while循环、do-while循环,for循环

        在Java5中引入一种主要用于数组和对象的增强型for循环,又称foreach循环

        1、while循环

        语法:

        

while(循环条件){
    循环操作/循环体
}

        流程图

java获得类变量名字 java如何获取变量的名字_开发语言_04

         注意:

                1.while是先判断再执行,编写循环时,明确循环条件和循环操作

                2.只有当循环条件为true时,才会执行循环操作

                3.注意在循环体中更新循环条件,否则容易造成死循环(条件永远成立)

        2、do---while循环

do{
    循环操作(先执行一次)
}while(循环条件);

        流程图如下:

java获得类变量名字 java如何获取变量的名字_数组_05

        注意:

        1.先执行一遍循环操作,再判断循环条件

        2.符合循环条件,循环继续执行;否则,循环退出

        3、while和do--while的区别----重点

                1:语法不同,注意do--while后面的分号不能丢

                2:执行次序不同

                while是先判断再执行,如果不满足条件,一次都不会执行

                do--while是先执行一次,再做判断,如果不满足,至少执行了一次

                3:当初始情况不满足循环条件时,while循环一次都不执行,do--while循环不管任何情况都至少执行一次

        4、for循环        

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

                注意:

                        1.for循环中必须要有参数初始化,否则报错

                        2.for循环中必须要有循环条件,且必须更新循环条件,否则就是死循环

        5、break、continue

                break主要是在循环或switch语句中,用来跳出整个语句块的

                break用于完全结束一个循环,跳出循环体,执行循环后面的语句

                continue是跳过本次循环中剩下的语句,执行下一次循环

                简单点说就是break是结束本次循环,continue终止本次循环

                break和continue的比较

                1、使用场合:

                        break常用于switch结构和循环结构

                        continue只能用于循环结构中

                2、在循环中的作用

                        break用于完全结束一个循环

                        continue是跳出本次循环,执行下一次循环

                

八、双层循环

        所谓双层循环,就是在循环内部嵌套循环

        语法:

for(变量i;循环条件;更新变量){
    循环操作1
    for(变量j;循环条件;更新变量){
        循环操作2
    }
}

        特点:

        1:外层循环控制行,内层循环控制列

        2:外层循环更新一次,内层循环更新一轮

九、数组

        1、数组是什么

                数组是一个容器,可以用来存储相同类型的一组数据。

                特点:

                1:数组是有长度的;长度:这个数组可以存储几个值。长度从1开始;

                2:数组是有下标的;下标:用来操作存取数组中的值,表示数组中元素的位置。下标从0开始;最大值都是长度-1

        2、数组的定义方式

        方式一:先创建数组,然后赋值

                数据类型[]  数组名 = new  数据类型;

                数据类型  数组名[]  =  new  数据类型[数组长度];

        特点:1:数组的长度一旦定义了,就不能再改变了,数组的长度是固定的

                   2:数组在创建的时候就已经有了初始值,初始值是根据数据类型而定。

                   3:通过下标来操作数组(存取值),下标是从0开始的,到长度-1结束

        方式二:创建数组的同时,就赋值

                数据类型[]  数组名  = {值,值,值,……};