有效的实现:“Python for Else Loop”在Java中 [英] Efficient implementation for: "Python For Else Loop" in Java
本文介绍了有效的实现:“Python for Else Loop”在Java中的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
示例代码:
for x in range(2,n):
if n%x == 0:
print n,'equals',x,'*',n / x
break
else:
#循环没有找到一个因子,但是没有找到一个因子
print n,'是一个素数'
在Java中,我需要编写更多代码来实现相同的行为:
finishedForLoop = true;
for(int x:rangeListOfIntegers){
if(n%x == 0)
{
// syso:在这里打印
finishedForLoop = false
break;
if(finishedForLoop == true){
// syso:在这里打印一些
}
有没有更好的类似Python的for Java循环的实现?
解决方案
class A {
public static void main(String []] args){
int n = 13;
found:{
for(int x:new int [] {2,3,4,5,6,7,8,9,10,11,12})
if( n%x == 0){
System.out.println(+ n +等于+ x +*+(n / x));
中断发现;
System.out.println(+ n +是一个素数);
$ hr
$ javac A.java&& java A
13是一个素数
In Python there is an efficient for else loop implementation described
here
Example code:
for x in range(2, n):
if n % x == 0:
print n, 'equals', x, '*', n/x
break
else:
# loop fell through without finding a factor
print n, 'is a prime number'
In Java I need to write more code to achieve the same behavior:
finishedForLoop = true;
for (int x : rangeListOfIntegers){
if (n % x == 0)
{
//syso: Some printing here
finishedForLoop = false
break;
}
}
if (finishedForLoop == true){
//syso: Some printing here
}
Is there any better implementation similar to Python for else loop in Java?
解决方案 It's done like this:
class A {
public static void main(String[] args) {
int n = 13;
found: {
for (int x : new int[]{2,3,4,5,6,7,8,9,10,11,12})
if (n % x == 0) {
System.out.println("" + n + " equals " + x + "*" + (n/x));
break found;
}
System.out.println("" + n + " is a prime number");
}
}
}
$ javac A.java && java A
13 is a prime number
这篇关于有效的实现:“Python for Else Loop”在Java中的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文