java中的循环break,如何简洁地判断是break出来的还是循环结束,或者说循环结束而不是break时做某事?

java中的循环break,如何简洁地判断是break出来的还是循环结束,或者说循环结束而不是break时做某事?,第1张

按你的要求,代码可以这样写:

public static void main(String[] args){

int[] a = {4,5,6} 

int b = 2 

for(int i = 0  i < a.length  i++){

if(a[i] == b){//找到了对应的元素

System.out.println(b + "是存在于数组a中的! " + "break即将结束循环!") 

break 

}

if(i == a.length - 1){//如果是最后一个元素,并执行到当前行,代表没有找到该元素

System.out.println("数组a中没有 " + b + " 这个元素!for循环即将结束!!") 

}

}

System.out.println("main over") 

}

Java中更简洁的代码可以借助函数,来完成数组中是否存在某个元素的判断,代码如下 :

public static void main(String[] args){

int[] a = {4,5,6} 

int b = 2 

getIndex(a,b) 

}

/**

*判断指定数组中是否存在指定元素

*arr  指定的数组

*key 指定的元素

*@return 当元素存在时,返回元素对应的索引值否则返回-1

*/

public static int getIndex(int[] arr,int key){

//遍历数组,借助if进行判断

for(int i = 0  i < arr.length  i++){

if(arr[i] == key){//找到了对应的元素

return i 

}

}

//如果循环中的if没有被执行,代表没有找到指定的元素

return -1 

}

下附java中break/continue/return三个关键字的用法:

break : 结束当前循环或借助标号结束指定循环

continue : 结束本次循环,继续下一次循环也可以借助标号指定循环开始的位置

return :  a.结束函数 b.结束函数并送回函数结果值.用于循环中时,也是结束函数,但因为函数中的循环依附于函数,函数结束,循环随函数一起结束.

通过该问题,可以看出可能是刚学Java的初学者,给你提几条建议 :

Java开发规范中一对大括号{},在左边的括号前是不会回车换行的(建议初学者养成良好的代码书写习惯,这个可以参考《阿里巴巴程序猿手册》)

如果能挤出时间参加培训,是最好的.自学的话一方面需要严格的自律,另一方面,学的知识不是很系统,并且进度慢.

学习一门语言,不仅要学习这门语言的语法规则,更要学习他的思想,更更重要的是总结自己学习语言的方法,将来可以用于其他语言的学习.

望采纳!如赞同,请点赞!您的肯定是我最大的动力!

array_search

(PHP 4 >= 4.0.5, PHP 5, PHP 7)

array_search — 在数组中搜索给定的值,如果成功则返回首个相应的键名

说明

array_search ( mixed $needle , array $haystack [, bool $strict = false ] ) : mixed

大海捞针,在大海(haystack)中搜索针( needle 参数)。

参数

needle

搜索的值。

注意:

如果 needle 是字符串,则比较以区分大小写的方式进行。

haystack

这个数组。

strict

如果可选的第三个参数 strict 为 true,则 array_search() 将在 haystack 中检查完全相同的元素。 这意味着同样严格比较 haystack 里 needle 的 类型,并且对象需是同一个实例。

返回值

如果找到了 needle 则返回它的键,否则返回 false。

如果 needle 在 haystack 中出现不止一次,则返回第一个匹配的键。要返回所有匹配值的键,应该用 array_keys() 加上可选参数 search_value 来代替。

警告

此函数可能返回布尔值 false,但也可能返回等同于 false 的非布尔值。请阅读 布尔类型章节以获取更多信息。应使用 === 运算符来测试此函数的返回值。

更新日志

版本 说明

5.3.0 As with all internal PHP functions as of 5.3.0, array_search() returns null if invalid parameters are passed to it.


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/11381537.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-15
下一篇 2023-05-15

发表评论

登录后才能评论

评论列表(0条)

保存