黑马程序员 Java函数和程序流程控制

本文详细介绍了Java中的程序流程控制,包括判断结构、选择结构及循环结构,并解释了if语句的特点与switch语句的选择类型。此外,还深入探讨了函数定义、重载以及数组的相关概念与操作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一:程序流程控制
1判断结构
2选择结构
3循环结构
1.1判断结构
if语句
三种格式:
1.if(条件表达式)
{
执行语句;
}
2.if(条件表达式)
{
执行语句;
}
else
{
执行语句;
}
3.if(条件表达式)
{
执行语句;
}
else if (条件表达式)
{
执行语句;
}
……
else
{
执行语句;
}
1.2  if语句特点
a,每一种格式都是单条语句。
b,第二种格式与三元运算符的区别:三元运算符运算完要有值出现。好处是:可以写在其他表达式中。
c,条件表达式无论写成什么样子,只看最终的结构是否是true 或者 false
2.1选择结构
switch语句
格式:
switch(表达式)
{
case 取值1:
执行语句;
break;
case 取值2:
执行语句;
break;
…...
default:
执行语句;
}
2.2switch语句特点:
 a,switch语句选择的类型只有四种:byte,short,int , char。
 b,case之间与default没有顺序。先执行第一个case,没有匹配的case执行default。
 c,结束switch语句的两种情况:遇到break,执行到switch语句结束。
 d,如果匹配的case或者default没有对应的break,那么程序会继续向下执行,运行可以执行的语句,直到遇到break或者switch结尾结束。
3.1循环结构
代表语句:while , do while , for

while语句格式:
while(条件表达式)
{
执行语句;
}
     先判断逻辑表达式的值。若=true.则执行其后面的语句,然后再次判断条件并反复执行,直到条件不成立为止
do while语句格式:
do
{
执行语句;
}while(条件表达式);
先执行语句,再判断逻辑表达式的值,若为true,再执行语句,否则结束循环。
格式:
for(初始化表达式;循环条件表达式;循环后的操作表达式)
{
执行语句;
}
注意:
a,for里面的连个表达式运行的顺序,初始化表达式只读一次,判断循环条件,为真就执行循环体,然后再执行循环后的操作表达式,接着继续判断循环条件,重复找个过程,直到条件不满足为止。
b,while与for可以互换,区别在于for为了循环而定义的变量在for循环结束就是在内存中释放。而while循环使用的变量在循环结束后还可以继续使用。
c,最简单无限循环格式:while(true) , for(;;),无限循环存在的原因是并不知道循环多少次,而是根据某些条件,来控制循环。
4其他流程控制语句
break(跳出),  continue(继续)
break语句:应用范围:选择结构和循环结构。
continue语句:应用于循环结构。
注:
a,这两个语句离开应用范围,存在是没有意义的。
b,这个两个语句单独存在下面都不可以有语句,因为执行不到。
c,continue语句是结束本次循环继续下次循环。
d,标号的出现,可以让这两个语句作用于指定的范围


二:函数的定义
1.什么是函数?
函数就是定义在类中的具有特定功能的一段独立小程序。
函数也称为方法。
2.函数的格式:
修饰符 返回值类型 函数名(参数类型 形式参数1,参数类型 形式参数2,…)
{
执行语句;
return 返回值;
}
返回值类型:函数运行后的结果的数据类型。
参数类型:是形式参数的数据类型。
形式参数:是一个变量,用于存储调用函数时传递给函数的实际参数。
实际参数:传递给形式参数的具体数值。
return:用于结束函数。
返回值:该函数运算的结果,该结果会返回给调用
三:函数的特点
1.定义函数可以将功能代码进行封装
2便于对该功能进行复用
3函数只有被调用才会被执行
4函数的出现提高了代码的复用性
5对于函数没有具体返回值的情况,返回值类型用关键字void表示,那么该函数中的return语句如果在最后一行可以省略不写。
注意:
•函数中只能调用函数,不可以在函数内部定义函数。
•定义函数时,函数的结果应该返回给调用者,交由调用者处理。
四:函数的重载


重载的概念
在同一个类中,允许存在一个以上的同名函数,只要它们的参数个数或者参数类型不同即可。
重载的特点:
与返回值类型无关,只看参数列表。
重载的好处:
方便于阅读,优化了程序设计。
重载示例:
//返回两个整数的和
  int add(int x,int y){return x+y;}
//返回三个整数的和
  int add(int x,int y,int z){return x+y+z;}
//返回两个小数的和
  double add(double x,double y){return x+y;}

五:数组
1数组的定义
概念
同一种类型数据的集合。其实数组就是一个容器。
数组的好处
可以自动给数组中的元素从0开始编号,方便操作这些元素。
格式1:
元素类型[] 数组名 = new 元素类型[元素个数或数组长度];
示例:int[] arr = new int[5];
格式2:
元素类型[] 数组名 = new 元素类型[]{元素,元素,……};
int[] arr = new int[]{3,5,1,7};
int[] arr = {3,5,1,7};
2数组操作常见问题
数组脚标越界异常(ArrayIndexOutOfBoundsException)
int[] arr = new int[2];
System.out.println(arr[ 3]);
访问到了数组中的不存在的脚标时发生。
空指针异常(NullPointerException)
int[] arr = null;
System.out.println(arr[0]) ;
arr引用没有指向实体,却在操作实体中的元素时。
3 数组中的数组
格式1:int[][] arr = new int[3][2];
l 定义了名称为arr的二维数组
l 二维数组中有3个一维数组
l 每一个一维数组中有2个元素
l 一维数组的名称分别为arr[0], arr[1], arr[2]
l 给第一个一维数组1脚标位赋值为78写法是:arr[0][1] = 78;
格式2:int[][] arr = new int[3][];
l 二维数组中有3个一维数组
l 每个一维数组都是默认初始化值null
l 可以对这个三个一维数组分别进行初始化
  arr[0] = new int[3];
  arr[1] = new int[1];
  arr[2] = new int[2];

格式3:int[][] arr = {{3,8,2},{2,7},{9,0,1,6}};
l 定义一个名称为arr的二维数组
l 二维数组中的有三个一维数组
l 每一个一维数组中具体元素也都已初始化
l 第一个一维数组 arr[0] = {3,8,2};
l 第二个一维数组 arr[1] = {2,7};
l 第三个一维数组 arr[2] = {9,0,1,6};
l 第三个一维数组的长度表示方式:arr[2].length;
练习:获取arr数组中所有元素的和。使用for的嵌套循环即可。
注意特殊写法情况:int[] x,y[]; x是一维数组,y是二维数组。
----------------------android培训、java培训、期待与您交流! ----------------------

内容概要:本文深入解析了扣子COZE AI编程及其详细应用代码案例,旨在帮助读者理解新一代低门槛智能体开发范式。文章从五个维度展开:关键概念、核心技巧、典型应用场景、详细代码案例分析以及未来发展趋势。首先介绍了扣子COZE的核心概念,如Bot、Workflow、Plugin、MemoryKnowledge。接着分享了意图识别、函数调用链、动态Prompt、渐进式发布及监控可观测等核心技巧。然后列举了企业内部智能客服、电商导购助手、教育领域AI助教金融行业合规质检等应用场景。最后,通过构建“会议纪要智能助手”的详细代码案例,展示了从需求描述、技术方案、Workflow节点拆解到调试与上线的全过程,并展望了多智能体协作、本地私有部署、Agent2Agent协议、边缘计算插件实时RAG等未来发展方向。; 适合人群:对AI编程感兴趣的开发者,尤其是希望快速落地AI产品的技术人员。; 使用场景及目标:①学习如何使用扣子COZE构建生产级智能体;②掌握智能体实例、自动化流程、扩展能力知识库的使用方法;③通过实际案例理解如何实现会议纪要智能助手的功能,包括触发器设置、下载节点、LLM节点Prompt设计、Code节点处理邮件节点配置。; 阅读建议:本文不仅提供了理论知识,还包含了详细的代码案例,建议读者结合实际业务需求进行实践,逐步掌握扣子COZE的各项功能,并关注其未来的发展趋势。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值