zoukankan      html  css  js  c++  java
  • 函数,数组

    函数的概念:实现特定功能的一段代码,可反复使用。

     函数的出现减少代码冗余,提高代码的复用性,可读性,可维护性,可以使每个功能模块独立起来,方便分工合作。

     函数的三要素:返回值、函数名、参数表

      

     

    我们可以在类中,与main方法(函数)并行的位置定义一个函数,如果我们定义的函数由返回值类型,那么我们必须

    要返回相应类型的值。如果函数的返回值类型是void,那么我们可以不需给予返回值,或者在函数中使用return ;结束函数。

    调用函数时,会优先执行函数内部代码,结束后,返回到函数调用处,继续向下执行。

    继续看这个源文件:

    方法的重载:函数名(方法名)相同,参数列表中的参数的个数、位置、类型至少有一个不同。我们称其为方法的重载

    方法重载与返回值、修饰符无关。

    ---------------------------------------------------------------------------------------------------------------------------------------------------------------------

    1.数组

    概念:一组连续的存储空间,存储多个相同数据类型的值。

    数组中的每个数据格被称为 “ 数组元素 ”

    对每个元素进行赋值或取值的操作被称为“ 元素的访问”

    2.数组的创建(4种方法)

    • 先声明、再分配空间:

    数据类型 [] 数组名;

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

    • 声明并分配空间:

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

    • 声明并赋值(繁):

    数据类型 [] 数组名 = new 数据类型 []{ value1,value2,value3 ,...};

    • 声明并赋值(简):

    数据类型 [] 数组名 = {value1,value2,value3,...}; // 显示初始化,注意:不可换行

    3.数组的默认值

    • 整数:0
    • 小数:0.0
    • 字符:u0000 (空格)
    • 布尔:false
    • 其他:null

    4.数组的遍历

    遍历:从头至尾,逐一对数组的每个元素进行访问。

    数组名.length 可动态获得数组长度。

    5.数组的扩容

    创建数组时,必须显式指定长度,并在创建之后不可更改长度。

    扩容的思路:

    创建大于原数组长度的新数组。

    将原数组中的元素依次 复制 到新数组中。

    5.1 扩容方式

    循环将原数组中所有元素逐一赋值给新数组。

    System.arraycopy( 原数组, 原数组起始, 新数组, 新数组起始, 长度 );

    java.util.Arrays.copyOf( 原数组 ,新长度 ); // 返回带有原值的新数组。

    5.2地址的替换

    数组作为引用类型之一,其变量中存储的是数组的地址。

    完成元素复制后,需将新数组地址,赋值给原变量进行替换。

    6.可变长参数

    概念:可接收多个同类型实参,个数不限,使用方式与数组相同。

    语法:数据类型 ... 形参名 // 必须定义在形参列表的最后,且只能有一个。

    7.数组的排序

    冒泡排序:相邻的两个数值比较大小,互换位置。

    选择排序:固定值与其他值依次比较大小,互换位置。

     

    JDK 排序: java.util.Arrays.sort( 数组名 ); //JDK 提供(升序)

    8.二维数组

    概念:一维数组中的一维数组;数组中的元素,还是数组。

    8.1创建语法

    • 先声明、再分配空间:

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

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

    • 声明并分配空间:

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

    • 声明并赋值(繁):

    数据类型 [][] 数组名 = new 数据类型[ [ 高维长度 ][] ; // 不规则数组,自行 new 低维数组

    • 声明并赋值(简):

    数据类型 [][] 数组名 = { { v1,v2,v3},{v4,v5},{v6,v7,v8,v9} }; //显式初始化,不可换行.

    8.2内存分配

    高维数组中的每一个元素,保存了低维数组的地址。

    8.3二维数组的访问

    访问低维长度:array[0].length 首个低维数组的长度

    访问低维数组元素:array[0][0] 首个低维数组的首个元素

     二维数组的应用:杨辉三角

  • 相关阅读:
    试试用有限状态机的思路来定义javascript组件
    利用grunt-contrib-connect和grunt-connect-proxy搭建前后端分离的开发环境
    利用bootstrap的modal组件自定义alert,confirm和modal对话框
    利用轮播原理结合hammer.js实现简洁的滑屏功能
    等高分栏布局小结
    圣杯布局小结
    浏览器缓存知识小结及应用
    基于淘宝弹性布局方案lib-flexible的问题研究
    淘宝弹性布局方案lib-flexible实践
    Js位置与大小(1)——正确理解和运用与尺寸大小相关的DOM属性
  • 原文地址:https://www.cnblogs.com/mms912/p/8672002.html
Copyright © 2011-2022 走看看