JavaSE-基础语法

2019-12-01  本文已影响0人  雷哒哒

第一章:变量

1.1-为什么需要变量?

​ 在计算机中,程序运行需要对数据进行处理,而程序中的数据在运行时会存储在内存中,编程中需要频繁操作内存中的数据,为了方便操作,程序中需要通过变量名作为标识符来操作内存中相关的数据。

1.2-什么是变量?

​ 变量就是在内存中所分配给数据的一块空间。同时内存会为该空间指定一个内存地址。

​ 程序中可以通过变量名操作内存中的数据。

1.3-如何定义和使用变量?

定义变量

使用变量

1.4-变量名的命名规则和规范是什么?

第二章:数据类型

2.1-数据为什么要区分类型?

不同种类的数据可以表示不同的事物

​ 计算机中存储的所有内容(文本文件、音乐文件、电影文件等等),都可称为数据。

​ 数据主要用来模拟现实事物。比如,如何描述商品的价格、人的身高呢?那就可以用数字类型的数据表示。如何描述一段文字呢(如:床前明月光)?此时就无法用数字类型的数据表示了,那就得用字符串表示。

​ 所以,根据模拟的现实事物不同,需要用不同类型的数据表示。

​ 另外需要注意的是,无论操作什么类型的数据,在计算机中最终都是以二进制存储的。

数据类型的划分

在Java中,数据分为两大类:

本篇先学习基本数据类型,后续再学习引用类型的数据。

2.2-基本数据类型有哪些?

八种基本数据类型:

数据类型 关键字 内存占用 取值范围
字节型 byte 1个字节 -128~127
短整型 short 2个字节 -32768~32767
整型 int 4个字节 -2的31次方~2的31次方-1
长整型 long 8个字节 -2的63次方~2的63次方-1
单精度浮点型 float 4个字节 1.4013E-45~3.4028E+38
双精度浮点型 double 8个字节 4.9E-324~1.7977E+308
字符型 char 2个字节 0-65535
布尔型 boolean 1个字节 true, false

2.3-不同类型的数据如何转换?

自动转换(隐式)

强制转换(显式)

第三章:运算符

3.1-为什么需要运算符?

​ 在程序中,需要频繁的运算数据,比如我们在网上购物时,需要计算总价格。

​ 如何命令计算机计算数据呢?这时就需要运算符号表示运算。

3.2-如何使用不同的运算符?

算术运算符

比较运算符

逻辑运算符

其他运算符

第四章:流程控制

4.1-为什么需要流程控制?

​ 流程,指的是程序的执行顺序。程序默认的执行顺序是自上而下执行的。

​ 但是,在程序中有些程序是选择执行的或是重复执行的,不同的选择会有不同的功能。比如我们玩游戏时王者荣耀时,我们在手机上选择不同英雄时,就是程序在执行不同的代码。

​ 所以,若要控制程序执行的流程,就必须学习流程控制语句。

​ 流程控制语句分为两大类:分支语句循环语句

4.2-如何使用流程控制?

分支语句

  1. if语句

    • 格式:

      if(条件表达式){
        // 代码块
      }
      /*
       若条件表达式成立(结果是true),则执行代码块中的程序。
      */
      
    • 图解执行流程:


  1. if-else语句

    • 格式:

      if(条件表达式){
        // 代码块
      }else {
        // 代码块
      }
      /*
       若条件表达式成立(结果是true),则执行if代码块中的程序,反之执行else代码块中的程序。
      */
      
    • 图解执行流程:

  1. if-else if...else语句

    • 格式:

      if(条件表达式){
        // 代码块
      }else if(条件表达式){
        // 代码块
      }
      else if(条件表达式){
        // 代码块
      }
      ...
      else {
        // 代码块
      }
      /*
        代码从上而下依次判断。
        若其中有满足条件的,则进入对于的代码块执行,后续分支不再执行。
        若都不满足,则执行else中的语句。
      */
      
    • 图解执行流程:


  1. switch语句

    • 格式:

      switch(表达式) { 
        case 常量值1: 
          语句体1;
         break;
        case 常量值2:
         语句体2;
         break; 
         ...
         default: 
          语句体n+1; 
         break;
      }
      // 首先计算出表达式的值 
      // 其次,和case依次比较,一旦有对应的值,就会执行相应的语句,在执行的过程中,遇到break就会结 束。
      // 最后,如果所有的case都和表达式的值不匹配,就会执行default语句体部分,然后程序结束掉。
      
    • 图解执行流程:


循环语句

  1. for循环

    • 格式:

      for(初始化表达式1; 布尔表达式2; 步进表达式4){ 
        // 循环体3
      }
      /*
      执行顺序:1234>234>234...2不满足为止。 
        1负责完成循环变量初始化 
        2负责判断是否满足循环条件,不满足则跳出循环 
        3具体执行的语句 
        4循环后,循环条件所涉及变量的变化情况
      */
      
    • 图解:


    • 代码:

      /* for循环 */
      for (int i = 0; i <5 ; i++) {
          System.out.println("hello" + i);
      }
      /*
      执行结果:
        hello0
        hello1
        hello2
        hello3
        hello4
      */
      
  2. while循环

    • 格式:

      初始化表达式1 
      while(布尔表达式2){
         循环体3
         步进表达式4 
      }
      /*
        执行顺序:1234>234>234...2不满足为止。
        1负责完成循环变量初始化。
        2负责判断是否满足循环条件,不满足则跳出循环。 
        3具体执行的语句。 
        4循环后,循环变量的变化情况
      */
      
    • 图解:

  1. do-while循环

    • 格式:

      初始化表达式1 do{
         循环体3
         步进表达式4 
      }while(布尔表达式2);
      /*
         
         执行顺序:134>234>234...2不满足为止。 
         1负责完成循环变量初始化。 
         2负责判断是否满足循环条件,不满足则跳出循环。 
         3具体执行的语句
         4循环后,循环变量的变化情况
      */
      
    • 图解:

  1. break和continue关键字

    • break:终止整个循环。

    • continue:结束循环中本次执行,并继续循环下次执行。

    • 代码:

      /* break 关键字 */
      // 如:连续吃5个包子,吃到第3个,吃饱了,后面第包子就不吃了
      for(int i = 1; i <=5; i++){
          if(i==3){
              System.out.println("吃饱了");
              break;
          }
          System.out.println("吃第" + i + "个包子");
      }
      
      /* continue关键字 */
      // 如:连续吃5个包子,吃到第3个时掉地上了,则第3个包子就不吃了,继续吃后面的包子
      for (int i = 1; i <=5 ; i++) {
          if(i==3){
              System.out.println("第" + i+ "包子掉地上了");
              continue;
          }
          System.out.println("吃第" + i + "个包子");
          
      }
      

第五章:数组

5.1-为什么要学习数组?

​ 在程序中,有时需要一个变量来管理一组数据,此时用数组结构比较合适。

5.2-什么是数组?

​ 数组,就是在内存中开辟一组连续的长度固定的且有序的存储一组同类型的数据。

​ 数组,是一种引用数据类型。

5.3-如何定义数组?

5.4-如何操作数组?

操作数组内部元素

遍历数组

5.5-基本数据类型和引用数据类型的区别?

数据创建时,内存分配的区别

数据传递时的区别

第六章:方法

6.1-什么是方法

方法,在编程中也叫函数

方法,可以将一段代码封装在一个代码块中,代表一个功能。

6.2 方法的定义和使用

定义方法的两个关键

  1. 返回值
  2. 参数列表

定义方式

权限修饰符 返回值类型 方法名(参数列表){
    // 封装的程序
    // return 返回对应类型的数据;
}

注意事项:

  1. 若没有返回值,则返回值类型定义为void
  2. 参数列表可有可无,根据需求定义。
  3. 方法名和变量名命名规则一样。
// 定义无参无返回值方法
public void fn1(){
    System.out.print("你好”);
}
// 定义有参无返回值方法
public void fn2(int num1,int num2){
     System.out.print(num1 + num2);                        
}
// 定义有参有返回值方法
public int fn3(int num1,int num2){
  return num1 + num2;                        
}
                     

调用方法

调用方式:方法名(实参列表)

注意事项:

  1. 若定义时没有形参标识,不用传入实参
  2. 若方法有返回值,则需要定义与返回值同类型的变量接收。

如调用上述定义的方法:

fn1();
fn2(100,200);
int sum = fn3(100,300);

6.3 方法的重载

在Java程序中,可以定义的多个·重名参数列表不同(参列表的个数或类型不同)的方法。这种现象叫做方法的重载。

代码如下:

public void fn(int num1,int num2){
     System.out.print(num1 + num2);                        
}
// 定义有参有返回值方法
public int fn(int num1,int num2,int num3){
  return num1 + num2;                        
}

注意事项:

  1. 重载与方法的权限修饰符和返回值类型无关
上一篇 下一篇

猜你喜欢

热点阅读