美文网首页
01-基本语法

01-基本语法

作者: 何惧l | 来源:发表于2018-05-31 15:44 被阅读7次

基本语法

  1. 关键字 & 标识符
    关键字:被Java语言赋予了特殊含义,用做专门用途的字符串(单词)
    标识符:凡是自己可以起名字的地方都叫标识符
  • 命名的规则:(一定要遵守,不遵守就会报编译的错误)
    • 由26个英文字母大小写,0-9 ,_或 $ 组成
    • 数字不可以开头。
    • 不可以使用关键字和保留字,但能包含关键字和保留字。
    • Java中严格区分大小写,长度无限制。
    • 标识符不能包含空格。
  • Java中的名称命名规范:(不遵守,也不会出现编译的错误)
    • 包名:多单词组成时所有字母都小写:xxxyyyzzz
    • 类名、接口名:多单词组成时,所有单词的首字母大写:XxxYyyZzz
    • 变量名、方法名:多单词组成时,第一个单词首字母小写,第二个单词开始每个单词首字母大写:xxxYyyZzz
    • 常量名:所有字母都大写。多单词时每个单词用下划线连接:XXX_YYY_ZZZ
  • 注释:用于说明代码的用途和作用,方便读写和维护
    • HTML注释:
    • Java注释:
    • //单行注释
    • /* 多行注释 */
    • /** 文档注释 */
  1. 变量
    变量是java程序中最基本的存储单元,可以存储一个数据
    java中变量按照数据类型来分类:基本数据类型 vs 引用数据类型(数组 类 接口)
  • 基本数据类型:

    • 整型:byte(8 bit) short int(默认类型) long
    • 浮点型:float double (默认类型) float类型的数据: 必须在小数末尾添加上"F"或"f"
    • 字符型:char(‘ ’)
    • 布尔类型: boolean(只能取值为true 或false,不能取null)
    • 补充:按照在类中存在的位置的不同:成员变量 vs 局部变量
    • 局部变量
      • 局部变量必须编写在方法体中
      • 局部变量只能在当前方法体中被访问
      • 局部变量在使用之前,必须被赋值
    • 成员变量
      • 全局变量只能编写所有方法体之外
      • 全局变量可以在任何方法体中被访问
      • 全局变量在使用之前如果没有赋值,系统将自动赋予默认值
      • 全局变量的操作,会应用其他引用了该变量的代码
    • 基本数据类型的默认值
      • 整数: 0
      • 小数: 0.0
      • 字符: 空格 或 0
      • 布尔: false
  • 变量的运算:

    • 自动类型转换:容量小的数据类型自动转换为容量大的数据类型。
      short s = 12;
      int i = s + 2;
      注意:byte short char之间做运算,结果为int型!
    • 强制类型转换:将取值范围大/精度高的数据类型 转为 取值范围小/精度低的数据类型
      • 是①的逆过程。使用“()”实现强转
  1. 运算符
    运算符是一种特殊的符号,用以表示数据的运算、赋值和比较等
  • 算术运算符:

    • + - + - * / % ++ -- +
      1. /: int i = 12; i = i / 5;
      2. %:最后的符号只跟被模数相同
      3. 前++:先+1,后运算 后++:先运算,后+1
      4. +:String字符串与其他数据类型只能做连接运算,且结果为String类型。sysout('' + '\t' + ''); vs sysout("" + '\t' + '')
  • 赋值运算符:

    • = += -= *= /= %=
    int i= 12;
    i  = i * 5;
    i *= 5;//与上一行代码同样的意思
    【特别地】
    short s = 10;
    s = s + 5;//报编译的异常
    s = (short)(s + 5);
    s += 5;//s = s + 5,但是结果不会改变s的数据类型。
    
  • 比较运算符(关系运算符)

    • == > < >= <= instanceof
    【注意】区分==  与 =  区别。
    进行比较运算操作以后,返回一个boolean类型的值
    4>=3  表达的是4 > 3或者 4 = 3.结果是true。
    
    if(i > 1 && i < 10){  }   
    不能写为:if(1 < i < 10){}
    
  • 逻辑运算符(运算符的两端是boolean值)

    • & && | || ^ !
    • 【注意】区分 & 与 && 的区别,以及 | 与 || 的区别我们使用的时候,选择&& , ||
  • 位运算符(两端是数值类型的数据)

    • << >> >>> & | ^ ~
    • 【例子】1.如何交换m = 12和n = 5的值
      2.将60转换为十六进制输出。
  • 三元运算符:(条件表达式)? 表达式1 : 表达式2

    1. 既然是运算符,一定会返回一个结果,并且结果的数据类型与表达式1,2的类型一致
    2. 表达式1与表达式2 的数据类型一致
    3. 使用三元运算符的,一定可以转换为if-else。反之不一定成立
  • 变量A++ 与 ++变量A的区别

    • 变量A++ / ++变量A: 变量A+1,将结果赋给变量A
    • 变量A-- / --变量A: 变量A-1,将结果赋给变量A
    • 变量A=变量B++/--:先将变量B的值赋给变量A,然后执行变量自增或自减1 ,先赋值,后自增/自减
    • 变量A=++/--变量B:先执行变量B自增或自减1,然后将变量B的值赋给变量A ,先自增/自减,后赋值
  • | || ,& &&区别

    • &:分别比较前后两个条件,当前后两个条件都为true时,整体为true,否则为false.
    • &&[短路与]:当前后两个条件都为true时,整体为true,否则为false. 如果第一个为false时,将不再判断之后的条件,将直接返回false
    • |:分别判断前后两个条件,至少有一个为true时,整体为true,否则为false.
    • ||[短路或]:当前后两个条件至少有一个为true时,整体为true,否则为false. 如果第一个条件为true时,将不再判断之后的条件,直接返回true.

数组

可以将多个同一数据类型的数据,存储到同一个容器中

  1. 格式
    • 数据类型[] 数组名=new 数据类型[元素个数]
      • "数据类型"表示该数组中可以存放哪一类型的数据
      • "[]" 表示当前变量的数据类型为数组类型
      • "元素个数" 限制了当前数组中可以存放的数据个数
      • 创建数组时,java系统自动设置各个元素的初始值,因此称为静态初始化
    • 数据类型[] 数组名=new 数据类型[]{元素1,元素2,...}
      • 以上方式在创建数组时,设置了各个元素的初始值,因此称为动态初始化.
    • 数据类型[] 数组名={元素1,元素2,...}
      • 以上方式在创建数组时,设置了各个元素的初始值,因此称为动态初始化.同时省掉了new关键字,直接创建数组,称为直接量语法
  2. 数组的操作:
    • 查询数组中元素:数组名[索引]
    • 修改数组中元素:数组名[索引]=值;
    • 设置数组中的元素:数组名[索引]=值;
    • 删除数组中的元素:数组名[索引]=默认值;

流程控制

  1. 分支结构
    • 条件判断:
①if(条件表达式){   }

②if(条件表达式){
    //执行的语句1;
  }else{
    //执行的语句2;
  }

③if(条件表达式1){
    //执行的语句1;
  }else if(条件表达式2){
    //执行的语句2;
  }else if( 条件表达式3){
    //执行的语句3;
  }...
  }else{
    //执行的语句;
  }

注意:
- 一旦满足某个条件表达式,则进入其执行语句块执行,执行完毕,跳出当前的条件判断结构,不会执行其以下的条件结构语句
- 如果诸多个条件表达式之间为“互斥”关系,多个结构可以上下调换顺序
如果诸多个条件表达式之间为“包含”关系,要求条件表达式范围小的写在范围大的上面

  • 选择结构
switch(变量){
    case 值1:
    
    //break;
    case 值2:
    
    //break;
    ...
    default:
    
    break;
}

注意:
- 变量可以为如下的数据类型:byte short int char 枚举 String
- case后只能填写变量的值,不能写范围
- default是可以省略的。并且其位置也是灵活的,但是通常将其放在case语句之后
- 一旦满足某个case语句,则进入执行其操作。直至遇到break或者程序终止
- 若要判断的语句的条件满足switch变量的数据类型,且值不多的情况下,建议选择switch-case,除此之外,选择if-else.

  1. 循环结构
    • 格式
①初始化条件
②循环条件
③迭代部分
④循环体

for(①;②;③){
    ④
}

①
while(②){
    ④
    ③
}

①
do{
    ④
    ③
}while(②);

注意:
- 不同的循环结构之间可以相互转换
- while和do-while的区别:do-while程序至少会执行一次
* 嵌套循环:循环结构还可以声明循环。让内层循环结构整体充当外层循环的循环体。
若外层循环执行m次,内层循环执行n次,整个程序执行m*n次

//题目
******
******
******
for(int i = 0;i < 3;i++){
    for(int j = 0;j < 6;j++){
        System.out.print("*");
    }
    System.out.println();
}
//说明:外层循环控制行数,内层循环控制列数
  • 无限循环结构
for(;;){
   ...
   if(  ){
    break;
   }
   ...
}
//或者
while(true){
   ...
   if(  ){
    break;
   }
   ...
}

往往我们在无限循环结构内部提供循环的终止条件,使用break关键字。否则,此循环将无限制的执行下去,形成死循环,死循环是我们要避免的

  1. break & continue
    • break:

      • 使用switch-case结构或者循环结构中
      • 在循环结构中,一旦执行到break,就跳出当前循环。
    • continue:使用在循环结构中

      • 一旦执行到continue,就跳出当次循环。
for(int i = 1;i <= 10;i++){
    if(i % 4 == 0){
        //break; //123
        continue;  //123567910
    }

    System.out.print(i);
}

在嵌套循环中,使用带标签的break和continue

label:for(int i = 1;i < 5;i++){
    for(int j = 1;j <= 10;j++){
        if(j % 4 == 0){
            //break;
            //continue;
            //break label;
            continue label;
        }
        System.out.print(j);
    }
    System.out.println();
}

相关文章

  • 01-基本语法

    基本语法 关键字 & 标识符关键字:被Java语言赋予了特殊含义,用做专门用途的字符串(单词)标识符:凡是自己可以...

  • SAP ABAP基本语法

    ABAP基本语法 基本语法.01-语句 ABAP源程序由注释和ABAP语句组成。 ABAP中的每个语句都以关键字开...

  • 01-基本语法、类和对象

    一、基本语法1、Objectiv-C简介: 2、关键字: 3、字符串: 4、基本数据类型:char、int、flo...

  • Simplingua简语语法01-基本语法/发音与拼写

    本系列文章出自Luis(qq83724071)的《简语语法》和《简语词典》,学习和交流使用。 简语7条基本语法 1...

  • Markdown语法

    Markdown基本语法 Markdown基本语法1 Markdown基本语法2(全、有用)

  • 01-基础语法

    Hello World 不用编写main函数,Swift将全局范围内的首句可执行代码作为程序入口 一句代码尾部可以...

  • 01-基本语法作业第1部分

    学习地址:撩课-JavaWeb系列1之基础语法-前端基础撩课-JavaWeb系列2之XML撩课-JavaWeb系列...

  • Swift 基本语法04-"switch"和

    Swift 基本语法01-Swift简介Swift 基本语法02-"let"和"var"Swift 基本语法03-...

  • Swift 基本语法06-数组和字典

    Swift 基本语法01-Swift简介Swift 基本语法02-"let"和"var"Swift 基本语法03-...

  • Swift 基本语法03-"if let"和

    Swift 基本语法01-Swift简介Swift 基本语法02-"let"和"var"Swift 基本语法04-...

网友评论

      本文标题:01-基本语法

      本文链接:https://www.haomeiwen.com/subject/huiqsftx.html