大数据Java基础DAY6(方法的使用,数组,二维数组,冒泡排序)

大数据Java基础DAY6(方法的使用,数组,二维数组,冒泡排序),第1张

大数据Java基础DAY6(方法的使用,数组,二维数组,冒泡排序)

目录

1.方法:

    方法定义的语句格式:

有明确返回值的方法调用:

没有明确返回值的函数调用:

 方法的重载:

2.数组:

    数组的初始化方式:     

Java中的内存分配

3.数组的使用

动态初始化的使用

 静态初始化的使用

 数组的遍历

4.二维数组

二维数组的格式

二维数组的遍历

 冒泡排序


1.方法:
    方法定义的语句格式:


        修饰符 返回值类型 方法名(参数类型 参数名1,参数类型 参数名2...){
            方法主体代码;
            return  XXX;
        }

        注意:
            1、搞清楚什么是形参,什么是实参。
            2、一般情况下,有返回值的方法,才会有return。return的作用是将计算好的结果返回给调用者,返回值类型与return要一致。
            3、方法不调用坚决不执行,在main方法中调用因为main方法是JVM程序运行的唯一入口                4、方法与方法是平级关系,不能嵌套定义。 方法定义的时候参数之间用英文逗号隔开  。
            5、没有返回值的时候,返回值类型是void。

有明确返回值的方法调用:

(1)用方法实现任意两个数据的和

(2)键盘录入两个值,返回其中的最大值

(3)键盘录入三个数据,返回其中的最大值。

没有明确返回值的函数调用:

其实就是void类型方法的调用 只能单独调用

(1)用方法打印乘法表

(2)键盘录入行和列,打印出对应的星型图案

 


 方法的重载:

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

方法重载特点 :与返回值类型无关,只看方法名和参数列表 在调用时,虚拟机通过参数列表的不同来区分同名方法。

例:用同名的方法实现数据的求和

2.数组:

 数组是存放同一种数据类型元素的集合,也可以看作是一个容器。
    特点:
        1、元素的数据类型一致,可以存放基本数据类型,也可以存放引用数据类型。
        2、数组的长度是固定的。

    数组的定义格式:
        1、数据类型[] 数组名; (推荐使用第一种)
        2、数据类型 数组名[];

    数组的初始化方式:
     

  1、动态初始化:在定义时候只给定数组的长度,值是由系统默认给出的。
            语句定义格式:数据类型[] 数组名 = new 数据类型[元素的个数];
            举例:int[] arr = new int[3];
                表示的是定义一个长度为3并且元素是int类型的一维数组。

2、静态初始化:在定义的时候,就手动给出元素值。
            语句定义格式:数据类型[] 数组名 = new 数据类型[]{元素值1,元素值2...};
            简化格式:数据类型[] 数组名 = {元素值1,元素值2...};

          例:int[] arr=new int[]{1,2,3}        简化:int[] arr={1,2,3}

Java中的内存分配

   栈   存储局部变量    (先进后出)
   堆   存储new出来的东西 
   方法区  (面向对象部分讲)
   本地方法区  (和系统相关)
   寄存器  (给CPU使用)

3.数组的使用

如果我们创建一个新的数组,int[] arr1=new int[5];此时我们如果之间输出数组,只会得到一个地址值(arr数组在堆内存中的地址值,地址是十六进制的形式),而我们更想获得数组中的元素。

而java在数组中提供了一个类似下标的说法(索引index),我们可以通过下标获取到该下标上的元素。例如现在我们的数组长度为5,索引从0开始,最大到4,也就是长度减1

所以数组的元素格式:数组名[对应的索引] ,而数组的长度我们可以length表示,例如数组arr1的长度为arr1.length  。所以数组中第一个元素为 arr1[0],最后一个元素为arr1[arr1.length-1]。

动态初始化的使用

 静态初始化的使用

 数组的遍历

我们可以利用for循环一次输出数组中的每一个元素。

 但是这样输出的数组不美观,而且不易观察结果。我们可以改进一下。

 这样我们能直观的看出结果。所以也可以把这种格式定义为数组遍历的方法,下次直接调用就好了。

(1)获取数组中的最大值

 (2)数组的逆序

 (3)合并数组,输出新数组

 (4)合并两个数组,升序排列(可以用Arrays.soft()方法)

 (5)二分法查找

 (6)输入某年某月某日,判断这一天是这一年的第几天? 分析:以3月5日为例,先把前两个月的加起来,然后再加上5天即本年第几天,特殊情况,闰年且输入月份大于3需考虑多加一天。可定义数组存储1-12月各月天数。

 

4.二维数组 二维数组的格式

格式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}};
 

二维数组的遍历

(1)二维数组遍历求和 *** 作:用二重循环求出二维数组b所有元素的和: int[][] b={{11},{21,22},{31,32,33}}

(2)打印杨辉三角形  

 冒泡排序

 

 

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/5701882.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-17
下一篇 2022-12-17

发表评论

登录后才能评论

评论列表(0条)

保存