七、方法

  定义:

    方法就是完成特定功能的代码块
      在很多语言里面都有函数的定义
      函数在Java中被称为方法

  格式:

    修饰符 返回值类型 方法名(参数类型 参数名1,参数类型 参数名2…) {
        函数体;
        return 返回值;
    }

  说明:

    修饰符       比较多,public static等
    返回值类型     用于限定返回值的数据类型
    方法名       一个名称,为了方便我们调用方法
    参数类型      限定调用方法时传入参数的数据类型
    参数名       是一个变量,接收调用方法时传入的参数
    方法体       完成功能的代码
    return        结束方法以及返回方法指定类型的值
    返回值       程序被return带回的结果,返回给调用者

  注意事项:

    方法不调用不执行
    方法与方法是平级关系,不能嵌套定义
    方法定义的时候参数之间用逗号隔开
    方法调用的时候直接传递变量或者常量值
    如果方法有明确的返回值,一定要有return带回一个值

  方法调用:

    有明确返回值的方法调用:
      单独调用,没有意义
      输出调用,有意义,但是不一定要把结果输出
      赋值调用,推荐方式

    没有明确返回值的函数调用:
      其实就是void类型方法的调用
      只能单独调用

  方法重载

    概述

      在同一个类中,允许存在一个以上的同名方法,只要它们的参数个数或者参数类型不同即可。

    特点

      与返回值类型无关,只看方法名和参数列表
      JVM在调用时通过参数列表的不同来区分同名方法

八、数组

  概述:

    数组是存储同一种数据类型多个元素的集合。也可以看成是一个容器。
    数组既可以存储基本数据类型,也可以存储引用数据类型。

  格式:

    格式1:数据类型[] 数组名;
    格式2:数据类型 数组名[];
    注意:这两种定义做完了,数组中是没有元素值的。

  初始化:

    概述

      Java中的数组必须先初始化,然后才能使用。
      所谓初始化:就是为数组中的数组元素分配内存空间,并为每个数组元素赋值。

    初始化方式

      动态初始化:初始化时只指定数组长度,由系统为数组分配初始值。

        格式:数据类型[] 数组名 = new 数据类型[数组长度];
        数组长度其实就是数组中元素的个数。
        举例:
          int[] arr = new int[3];
        解释:定义了一个int类型的数组,这个数组中可以存放3个int类型的值。

      静态初始化:初始化时指定每个数组元素的初始值,由系统决定数组长度

        格式:
          数据类型[] 数组名 = new 数据类型[]{元素1,元素2,…};
        举例:
          int[] arr = new int[]{1,2,3};
        解释:定义了一个int类型的数组,这个数组中可以存放3个int类型的值,并且值分别是1,2,3。
           其实这种写法还有一个简化的写法
           int[] arr = {1,2,3};

  Java中的内存分配

     Java 程序在运行时,需要在内存中的分配空间。为了提高运算效率,就对空间进行了不同区域的划分,因为每一片区域都有特定的处理数据方式和内存管理方式。
     栈 存储局部变量
     堆 存储new出来的东西
     方法区 
     本地方法区 (和系统相关)
     寄存器 (给CPU使用)

    图解:

    

  数组操作常见的两个小问题

    数组索引越界

      ArrayIndexOutOfBoundsException
      访问到了数组中的不存在的索引时发生。

    空指针异常

      NullPointerException
      数组引用没有指向实体,却在操作实体中的元素时。

  二维数组

    概述

      二维数组就是一个元素为一维数组的数组。

    格式

        格式1:

        数据类型[][] 变量名 = new 数据类型[m][n];
        m表示这个二维数组有多少个一维数组
        n表示每一个一维数组的元素个数
        举例:
          int[][] arr = new int[3][2];
          定义了一个二维数组arr
          这个二维数组有3个一维数组,名称是arr[0],arr[1],arr[2]
          每个一维数组有2个元素,可以通过arr[m][n]来获取
          表示获取第m+1个一维数组的第n+1个元素

        格式2:

          数据类型[][] 变量名 = new 数据类型[m][];
          m表示这个二维数组有多少个一维数组
          这一次没有直接给出一维数组的元素个数,可以动态的给出。
          举例:
            int[][] arr = new int[3][];
            arr[0] = new int[2];
            arr[1] = new int[3]
            arr[2] = new int[1];

        格式3:

          数据类型[][] 变量名 = new 数据类型[][]{{元素…},{元素…},{元素…}};
          简化格式:
            数据类型[][] 变量名 = {{元素…},{元素…},{元素…}};
          举例:
            int[][] arr = {{1,2,3},{4,6},{6}};

九、键盘录入数据

  概述

    我们目前在写程序的时候,数据值都是固定的,但是实际开发中,数据值肯定是变化的,所以,我准备把数据改进为键盘录入,提高程序的灵活性。

  键盘录入数据

    导包(位置放到class定义的上面)
      import java.util.Scanner;
    创建对象
      Scanner sc = new Scanner(System.in);
    接收数据
      int x = sc.nextInt();

Java基础语法(三)的更多相关文章

  1. Java基础语法(三)---数组

    一.概念         同一种类型数据的集合.简单的来说就是一容器,用来装东西的. 使用数组的好处:可以自动给数组中的元素从0开始编号,方便操作这些元素. 二.一维数组的格式 格式1:元素类型 [ ...

  2. Java基础语法<三> 输入输出

    1. 读取输入 Scanner in = new Scanner(System.in);   输入一行(包含空格) String str = in.nextLine()   读取一个单词(以空白符作为 ...

  3. JavaSE基础(三)--Java基础语法

    Java 基础语法 一个 Java 程序可以认为是一系列对象的集合,而这些对象通过调用彼此的方法来协同工作.下面简要介绍下类.对象.方法和实例变量的概念. 对象:对象是类的一个实例,有状态和行为.例如 ...

  4. 011 01 Android 零基础入门 01 Java基础语法 02 Java常量与变量 05 变量的三个元素的详细介绍之三—— 变量值——即Java中的“字面值”

    011 01 Android 零基础入门 01 Java基础语法 02 Java常量与变量 05 变量的三个元素的详细介绍之三-- 变量值--即Java中的"字面值" 变量值可以是 ...

  5. 010 01 Android 零基础入门 01 Java基础语法 02 Java常量与变量 04 变量的三个元素的详细介绍之二——变量类型——即Java中的数据类型

    010 01 Android 零基础入门 01 Java基础语法 02 Java常量与变量 04 变量的三个元素的详细介绍之二--变量类型--即Java中的数据类型 Java中变量的三要素 变量名 变 ...

  6. JAVA学习(三):Java基础语法(变量、常量、数据类型、运算符与数据类型转换)

    Java基础语法(变量.常量.数据类型.运算符与数据类型转换) 1.变量 Java中.用户能够通过指定数据类型和标识符来声明变量.其基本的语法为: DataType identifier; 或 Dat ...

  7. java面向对象编程——第二章 java基础语法

    第二章 java基础语法 1. java关键字 abstract boolean break byte case catch char class const continue default do ...

  8. Java基础语法(下篇)

     Java基础语法(下篇) 内容概要:        (1)函数的定义        (2)函数的特点        (3)函数的应用        (4)函数的重载               ...

  9. Java基础语法(上篇)

                     Java基础语法(上篇) 知识概要: (1)关键字的表示与规范       (2)标示符              (3)注释                (4 ...

  10. Java基础语法入门01

    Java基础语法入门01 学习java你要先进行去了解JDK,JRE,JVM JDK Java开发工具包 JRE Java语言开发的运行环境 JVM Java虚拟机,用于Java语言的跨平台所用. 当 ...

随机推荐

  1. node2vec应用记录

    1.已有写好的python代码,可以直接下载调用,GitHub链接https://github.com/aditya-grover/node2vec/blob/master/requirements. ...

  2. WordPress禁用插件另类方法不用进后台

    刚刚一小美女说她在WordPress后台启用了一个插件后出现了问题,网站前端和后端都不能打开了,ytkah查看了一下是有个插件api和另一个插件冲突了,但要怎么禁用呢?有两个办法可以解决 1.直接删除 ...

  3. FastReport快速入门

    界面及连接关系 frxDBDataset1连接datasource 双击frxReport1控件进入设计界面,选择报表->数据,弹出窗口选择要显示数据的frxdbdataset,frxdbdat ...

  4. shell中expect介绍

    expect介绍 借助Expect处理交互的命令,可以将交互 过程如:ssh登录,ftp登录等写在一个脚本上,使之自动化完成.尤其适用于需 要对多台服务器执行相同操作的环境中,可以大大提高系统管理人员 ...

  5. 006-优化web请求二-应用缓存、异步调用【Future、ListenableFuture、CompletableFuture】、ETag、WebSocket【SockJS、Stomp】

    四.应用缓存 使用spring应用缓存.使用方式:使用@EnableCache注解激活Spring的缓存功能,需要创建一个CacheManager来处理缓存.如使用一个内存缓存示例 package c ...

  6. 递归与非递归打印乘法口诀表--Scala(指令式、函数式思维练习)

    object Test extends App { def printMultiTable() { var i = 1 while (i < 10) { var j = 1 while (j & ...

  7. sap QG3搜索

    先创建一个QG3系统,创建一个用户. 1: 进入搜索模板 2: 选择软件组件,点击执行 3: 设置过滤条件. 4: 选择在哪一列 设置过滤条件. 5: 定义搜索值 6: 设置值 可以将搜索的结果删除. ...

  8. dialog问题记录

    这个怎么回事,怎么会负利润 http://mmbiz.qpic.cn/mmbiz_jpg/sd9PceC1NdAEVpR5pKerugkpEPEUIsBVoaz5ibTiaHtxoickmF2bXqF ...

  9. bat/cmd将命令执行的结果赋值给变量

    比如我想把git代码的commitid获取以后加到文件夹上来标记文件夹中的包是哪个git 节点构建得到的. git 命令是git rev-parse --short HEAD 再linux系统下,只需 ...

  10. 小a和uim之大逃离

    题目传送门 #include <bits/stdc++.h> using namespace std; #define ll long long #define re register # ...