黑马程序员JAVA 040---050 小结

来源:互联网 发布:恋恋影视vip2账号淘宝 编辑:程序博客网 时间:2024/06/04 01:37

------Java培训、Android培训、iOS培训、.Net培训、期待与您交流! -------

041_语句(练习)_黑马程序员_Java基础视频

042_函数(概述)_黑马程序员_Java基础视频

函数的定义,函数的特点,函数的应用,函数的重载。

什么是函数?

函数就是定义在类中的具有特定功能的一段独立小程序。

函数也称为方法。

函数的格式

修饰符 返回值类型 函数名(参数类型 形式参数类型1,参数类型 形式参数类型2,。。。)

{

执行语句

return 返回值

返回值类型,函数运行结果的数据类型。

参数类型,是形式参数的类型。

形式参数,其实就是一个变量。

实际参数

return 用于结束函数

返回值,返回结果。

class FunctionDemo
{
public static void main(String[] args)
{
System.out.println(getResult(5));
}




public static int getResult(int num)
{
return num*3+5;
}
}

//发现以上的运算,因为获取不同的运算结果,代码出现了重复。
//为了提高代码的复用性,对代码进行抽取。
//将这个部分定义或一个独立的功能,方面与日后使用。
//java中对功能的定义是通过函数的形式来体现的。
//当函数运算时,没有具体的返回值时,没有反回值类型时候,用一个特殊的关键字
//void表示当返回值是void时,函数中的return语句可以省略不写。//在函数调用中不能定义函数。

043_函数(应用)_黑马程序员_Java基础视频

主函数的功能就是调用函数。

如何定义一个函数呢?

1,既然函数是一个独立的功能,那么该功能的运算结果是什么,先明确。

因为这是在明确函数的返回值类型。

2,再明确在定义该功能的过程中,是否需要未知的内容参与运算。

因为是在明确函数的列表参数,(参数的类型和参数的个性)。


//需求,定义一个功能,完成3+4的运算,并将结果返回给调用者。

1,明确功能的结果,是一个整数的和。

2,在实现该功能的过程中,是否有未知内容参与运算。没有。

其实这两个功能就是在明确函数的定义。

1,是在明确函数的返回值类型。

2,明确函数的参数列表。(参数的类型和参数的个数)。

/*

需求:判断两个数是否相同。

思路:

1,明确功能的结果,结果是boolean.

2,功能是否有未知参与运算,有, 两个整数。

*/

三元运算符 和if语句,

三元运算符必须要有结果。

返回值是void的时候,,是不能被具体输出。

定义函数你只要完成相对应的功能,不要做太多的功能,其他功能是调用者的事,定义思想千万不能乱。

044_函数(练习)_黑马程序员_Java基础视频

045_函数(重载)_黑马程序员_Java基础视频

重载的概念

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

重载的特点

与返回值无关,只看参数列表。

重载的概念

方便阅读,优化了程序设计。

同名,参数也一致的函数,不能同时在一个类中。

什么时候用重载

当定义功能相同,但参与运算的内容不同,

那么,这时就定义一个函数名称以表示其功能,方面阅读,而通过参数列表的不同来区分多个同名函数。

046_函数(重载练习)_黑马程序员_Java基础视频

047_数组(概述-内存结构)_黑马程序员_Java基础视频

048_数组(静态初始化-常见问题)_黑马程序员_Java基础视频

数组的定义

数组的内存分配及特点

数组的常用操作

数组中的数组

同一种类型数据的集合,其实数组是一个容器。

可以自动给数组的元素从0开始编号,方便操作这些元素。

数组的格式1

元素类型[]数组名=new 元素类型[元素个数或者数组长度]

int[]x=new int[3];

int x[]=new int[3];

x=null;//将不再指向堆内

JAVA内存比C++更优秀。推内是由JAVA的垃圾回收机制清理,不会立即清理,不定时清理。


数组的格式2

int[] arr=new int[]{3,1,6,5,4};

int[] arr={3,1,6,5,4};


JAVA运行程序的时候在内存中开辟5个区域

栈内存区的特点,数据使用完毕会自动释放

局部变量都是在栈内存中

推内存区 数组 和对象都是实体都放在推内存区内。

int[]arr=new int(3);

arr[3] 数组越界了

ArrayIndexOutOfBoundsException操作数组时,访问到了数组中不存在的角标

NullPointerExcetption 空指针异常。当引用没有任何指向值为NULL的情况,该引用还在操作实体。

049_数组(常见操作-遍历)_黑马程序员_Java基础视频

获取数组中的元素,通常会用到遍历。

数组中有一个属性可以直接获取到数组元素个数,length

遇到数组,一般都要用到for因为你要把数组取出来用。

System.out.println(arr.length);  

哈希值

050_数组(常见操作-获取最值)_黑马程序员_Java基础视频

比较思想

遍历数组

获取数组中的最大值

思路:

1获取最值需要进行比较。每一次比较都会有一个较大的值,因为该值不确定,通过一个

变量进行零时存储。

2让数组中的每一个元素都和这个变量的值进行比较。

如果大于了变量的值,就用该变量记录较大值。

3当所有的元素都比较完成,那么该变量中存储的就是数组中的最大值啦。

步骤:

1定义变量,初始化为数组中的任意一个元素即可,

2通过循环语句对数组进行遍历。

3在遍历工程中定义判断条件,如果遍历到的元素比变量中的元素大,就赋值给该变量。

需要定义一个功能来完成,以便提高复用性。

1,明确结果,数组中的最大元素,int.

2未知内容:一个数组。int[]


public static int getMax(int() arr)

{

int max=arr[0];

for(int x=1;x<arr.length;x++)

if(arr[x]>max)

max=arr[x];

}

return max;

}

public static void main(String[] args)

{

int[] arr={5,1,6,4,2,8,9};

int max=getMax(arr);

System.out.println("max="+max);

}



0 0
原创粉丝点击