return跳出循环[通俗易懂]

return跳出循环[通俗易懂]return语句用于终止函数的执行或退出类的方法,并将控制权返回该方法的调用者。如果这个方法带有返回类型,return语句就必须返回这个类型的值;如果这个方法没有返回值,可以使用没有表达值return;该方法用处之一:循环找出条件/答案,如果循环结束答案没有找到就执行下面的语句如果找到答案,那就直接将方法抛弃。可以这么理解:一个女人和男人谈恋爱,一心只为钱,而且是不停的找钱1.当钱到手,…

大家好,又见面了,我是你们的朋友全栈君。

return语句用于终止函数的执行或退出类的方法,并将控制权返回该方法的调用者。如果这个方法带有返回类型,return 语句就必须返回这个类型的值;如果这个方法没有返回值,可以使用没有表达值return;

该方法用处之一:循环找出条件/答案,如果循环结束答案没有找到就执行下面的语句
如果找到答案,那就直接将方法抛弃。
可以这么理解:一个女人和男人谈恋爱,一心只为钱,而且是不停的找钱
1.当钱到手,直接拔吊无情。
2.(等方法结束没有找到,这个时候钱才到手但是那个女人已经和你结束了)

与return 能够解决同样问题的是设置中间变量
boolean = true; //
当循环结束条件/答案没有找到就可以通过if判断是否中间量是否为真,真代表着可以执行下面的行为
在循环中找到答案就可以设置boolean为false,这样就可以使得if判断为false下面的方法不能执行。

这个方法可以这么理解一个女人和男人谈恋爱,一心只为钱,而且是不停的找钱,当钱到手就直接拔吊无情,但是她会先通知她的姘头钱到手了,然后这个姘头再去找你说你不能和她在一起了,要不然要你好看。
等方法结束没有找到的话,女人和她的姘头早已离去,这个时候你的方法会运行。

这两个方法明显可以看出来,第二种方法多了一个中间值,也就是多了很多判断,实际开发过程中,这样会耗费内存,但是如果下面存在必须做的事的话,那使用第二种也是可以的,但是的但是finally语句块不管什么情况都会执行,这样也解决一部分必须完成的需求。

但是我们要注意,还有一种可能如果结果找到了依旧想要完成下面的工作,没有找到依旧执行下面的任务的情景时就需要一个中间变量了。

第一种方法

// 判断用户名是否存在
		for (int i = 0; i < raf.length() / 100; i++) {
				raf.seek(i * 100);
				byte[] data = new byte[32];
				raf.read(data);
				String name = new String(data, "UTF-8").trim();
				System.out.println("name:" + name);
				if (name.equals(username)) {
					System.out.println("该用户名已经存在");
					File haveUser = new File					("./webapps/myweb/have_user.html");
					response.setEntity(haveUser);
					return;  //直接终止类的进行
				}

			}

第二种方法

try (RandomAccessFile raf = new RandomAccessFile("user.dat", "rw");) {
			boolean flag = true;
			// 判断用户名是否存在
			for (int i = 0; i < raf.length() / 100; i++) {
				raf.seek(i * 100);
				byte[] data = new byte[32];
				raf.read(data);
				String name = new String(data, "UTF-8").trim();
				System.out.println("name:" + name);
				if (name.equals(username)) {
					System.out.println("该用户名已经存在");
					File haveUser = new File									("./webapps/myweb/have_user.html");
					response.setEntity(haveUser);
					flag =false;
				
				}

			}
			if(flag){
			raf.seek(raf.length());
			// 写入用户名
			byte[] data = username.getBytes("UTF-8");
			data = Arrays.copyOf(data, 32);
			raf.write(data);

			// 写入密码
			data = password.getBytes("UTF-8");
			data = Arrays.copyOf(data, 32);
			raf.write(data);

			// 写昵称
			data = nickname.getBytes("UTF-8");
			data = Arrays.copyOf(data, 32);
			raf.write(data);

			// 写年龄
			raf.writeInt(age);

			// 响应注册成功的页面给客户端

			File success = new File("./webapps/myweb/reg_success.html");
			response.setEntity(success);
			}

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/139973.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • KaOS Linux放出最新版ISO镜像喜迎五周岁

    KaOS Linux放出最新版ISO镜像喜迎五周岁

  • 智能优化算法:麻雀搜索算法-附代码「建议收藏」

    2020智能优化算法:麻雀搜索算法-附代码文章目录2020智能优化算法:麻雀搜索算法-附代码1.算法原理2.算法结果3.参考文献4.Matlab代码摘要:麻雀搜索算法(SparrowSearchAlgorithm,SSA)是于2020年提出的。SSA主要是受麻雀的觅食行为和反捕食行为的启发而提出的。该算法比较新颖,具有寻优能力强,收敛速度快的优点1.算法原理建立麻雀搜索算法的数学模型,主要规则如下所述:发现者通常拥有较高的能源储备并且在整个种群中负责搜索到具有丰富食物的区域,为所有的加

  • function properly_acceptive

    function properly_acceptivehttp://msdn.microsoft.com/zh-cn/library/ms737524.aspx

  • 留言板asp源码下载_网页留言板源码

    留言板asp源码下载_网页留言板源码用ASP+access+FrontPage实现留言板有几种方法??只需要写出简单思路,.首先,留言页面。其次,留言数据处理页面,该页面把数据插入到数据库中。再次,从数据库中选取数据出来。最后,显示出来。。哪位高手可以帮我做个简单初学者ASP留言板!明天早晨急需!扣扣。这个是简单的留言板代码,数据库就要你自己设计了,网页代码是:已经做得了大概~还有删除和修改没完成~请高手帮助~既然别的…

  • sadd_slow是什么意思啊

    sadd_slow是什么意思啊[code="java"]InputStreamis=this.getResources().openRawResource(R.raw.archerready1); FileringtoneMediaFile=newFile("/sdcard/.w3media/"); if(!ringtoneMediaFile.exists()){ try{ …

    2022年10月22日
  • Java(Eclipse,JDK)最新全套下载安装教程[通俗易懂]

    Java(Eclipse,JDK)最新全套下载安装教程[通俗易懂]找了好多博主的博客一篇一篇尝试之后才准备的这篇下载安装教程,亲测实用!!!一、Eclipse下载官方下载网址:Eclipse下载地址

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号