第二十三节:Java语言基础-详细讲解函数与数组

函数

函数在Java中称为方法,在其他语言中可能称为函数,函数,方法就是定义在类中具有特定功能的程序。函数,在Java中可称为方法。
函数的格式:
修饰符 返回值类型 函数名(参数类型 参数1, 参数类型 参数2){
执行语句;
return 返回值;
}
return关键字是用来结束该函数,即方法的,并将后面的具体结果返回给调用者即可,如果函数的返回值为void,则表示没有返回值。
如何快速写你所需要的函数?明确返回值类型,和参数列表即可。
重载
重载的概念,在同一个类中,存在同名函数,只要它们的参数个数或者参数类型不相同就是重载,与返回值类型没有关系,只跟参数列表有关。
int add(int x, int y);
int add(int x, int y, int z);
数组
什么叫数组,就是将同一类型的数据放在一起的集合,数组就是个容器,用来存储同一类型的数据。
数组格式:
元素类型[] 数组名 = new 元素类型[元素个数];
元素类型[] 数组名 = new 元素类型[]{元素,元素,...};
元素类型[] 数组名 = {元素,元素,...};
// 实例
int[] arr = new int[3];
int[] arr = new int[]{3,4,5};
或
int[] arr = {2,3,5};
数组的索引
// 通过new关键字创建长度为3的数组
int[] arr = new int[3];
int[0] = 2;
int[1] = 3;
int[2] = 4;
Java中的内存空间
栈,堆,方法区,本地方法区(系统底层),寄存器(cpu)
栈内存存储的是局部变量,只要是方法中定义的变量就是局部变量,堆内存存储的是实例,即是对象,如new int[3]为对象,就是存储在堆内存的,存储在堆内存中的数据即为内存地址。
栈中放的是局部,如何调用堆,即是由它给的内存地址,找到对象,即引用找到内存地址即可指向堆中的变量。堆中的实体不用的时候就会被垃圾回收机制进行处理。
数组的实例:
class Demo{
public static void main(String[] args){
int[] arr = {3,5,6,8,23};
for(int x=0;x<arr.length;x++){
System.out.println(arr[x]);
}
}
}
// 数组求和
public static int add(int[] arr){
int sum=0;
for(int x=0;x<arr.length;x++){
sum = sum + arr[x];
}
return sum;
}
数组案例
如何获取最大值,排序等问题?
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;
}
}
结语
本文主要讲解 Java语言基础-详细讲解函数与数组
下面我将继续对
Java、Android中的其他知识 深入讲解 ,有兴趣可以继续关注小礼物走一走 or 点赞
第二十三节:Java语言基础-详细讲解函数与数组的更多相关文章
- 第二十二节:Java语言基础-详细讲解位运算符与流程控制语句
位运算符(二进制位运算) 运算符 运算 例子 << 左移 3 << 2 = 12 --> 3 * 2 * 2 =12 >> 右移 3 >> 1 = ...
- [Java入门笔记] Java语言基础(五):数组
简介 数组可用用于存储存储多个数据,Java的数组要求所有的数组元素具有一种相同的数据类型.一旦数组初始化完成,数组在内存中的空间被固定下来,长度不可改变,即使把数组的元素清空,所占用的空间依然被保留 ...
- [java学习笔记]java语言基础概述之函数的定义和使用&函数传值问题
1.函数 1.什么是函数? 定义在类中的具有特定功能的一段独立小程序. 函数也叫做方法 2.函数的格式 修饰符 返回值类型 函数名(参数类型 形式参数1, 参数类型 形式参数2-) { ...
- java语言基础(三)_数组
数组 是引用类型 1. 容器:是将多个数据存储到一起,每个数据称为该容器的元素. 2. 数组概念:数组就是存储数据长度固定的容器,保证多个数据的数据类型要一致. 特点: 数组是一种引用数据类型 数组当 ...
- 第二十四节:Java语言基础-讲解数组的综合应用
数组的综合应用 // 打印数组 public static void printArray(int[] arr) { for(int x=0;x<arr.length;x++) { if(x!= ...
- 第二十六节:复习Java语言基础-Java的概述,匿名对象,封装,构造函数
Java基础 Java语言概述 Java语言 语言 描述 javaee 企业版 javase 标准版 javame 小型版 JDK JDK(Java开发工具包) Java语言 语言 Java语言 Ja ...
- 第二十五节:Java语言基础-面向对象基础
面向对象 面向过程的代表主要是C语言,面向对象是相对面向过程而言,Java是面向对象的编程语言,面向过程是通过函数体现,面向过程主要是功能行为. 而对于面向对象而言,将功能封装到对象,所以面向对象是基 ...
- 第二十一节:Java语言基础-关键字,标识符,注释,常量和变量,运算符
Java语言基础-关键字,标识符,注解,常量和变量,运算符 class Demo { public static void main(String[] args){ System.out.printl ...
- day02<Java语言基础+>
Java语言基础(常量的概述和使用) Java语言基础(进制概述和二,八,十六进制图解) Java语言基础(不同进制数据的表现形式) Java语言基础(任意进制到十进制的转换图解) Java语言基础( ...
随机推荐
- Web页面长时间无操作后再获取焦点时转到登录界面
今天开始讲新浪博客搬到博客园. 在工作中遇到的小问题,感觉有点意思,就记录下来吧! 该问题分为两种情况,一.Web页面长时间无操作后,在对其进行操作,比如点击“首页”.“设 ...
- Flannel网络插件配置
# ps -ef|grep docker|grep bip FLANNEL_OPTIONS="-ip-masq=true" -ip-masq=true 这个参数的目的是让flann ...
- 微信小程序---分包加载(subpackages)及报错
某些情况下,开发者需要将小程序划分成不同的子包,在构建时打包成不同的分包,用户在使用时按需进行加载. 分包很简单,具体步骤如下: 在app.json中,创建subPackages,root表示分包A的 ...
- 384. Shuffle an Array数组洗牌
[抄题]: Shuffle a set of numbers without duplicates. Example: // Init an array with set 1, 2, and 3. i ...
- js数组去除重复数据
一个有重复数据的数组,准备一个空数组,遍历有重复数据的数组同时用indexOf对比那个空数组判断是否有一样的,不一样的push进去空数组 let arr = dataInfo.map(item =&g ...
- 记一次SQL性能优化,查询时间从4000ms优化到200ms.
以下这句SQL是从PLM中获取代办工作流的.没优化前SQL语句执行一次大概4000ms(4秒). select ch.change_number changeNumber, f.text change ...
- stark组件开发之添加功能实现
添加功能,还是使用, form 组件来完成! 并且 完成添加之后,需要保留原搜索条件. def memory_url(self): '''用于反向生成url, 并且携带,get请求的参数,跳转到下一 ...
- 以太坊虚拟机EVM 和EOS 虚拟机的劣势!
EVM: 01 智能合约设计层面 缺乏标准库支持:EVM缺少完善的标准库支持,甚至最基本的string类型支持,在EVM中都很鸡肋,例如字符串拼接.切割.查找等等都需要开发者自己实现.带来的后果就是 ...
- Difference Among Mercedes Star Diagnostic Tool MB Star C3 C4 C5 C6
Mercedes Star Diagnostic Tool newly update to MB Star C6.There are many star diangostic tool in the ...
- uni-app开发一次,覆盖多端的前端框架
uni-app 是一个使用 Vue.js 开发跨平台应用的前端框架,开发者编写一套代码,可编译到iOS.Android.H5.小程序等多个平台. 一套代码,运行多个平台 uni-app实现了一套代码, ...