java – 在不使用break的情况下打破嵌套的for循环
发布时间:2020-12-15 02:49:57 所属栏目:Java 来源:网络整理
导读:我的项目终于完成了,但我唯一的问题是我的老师不接受我们代码中的“中断”.有人可以帮我解决这个问题,我已经做了好几天了,我似乎无法让程序在不使用它们的情况下工作.中断位于我的DropYellowDisk和DropRedDisk方法中.除了那个问题,我的连接四个程序是完美无
我的项目终于完成了,但我唯一的问题是我的老师不接受我们代码中的“中断”.有人可以帮我解决这个问题,我已经做了好几天了,我似乎无法让程序在不使用它们的情况下工作.中断位于我的DropYellowDisk和DropRedDisk方法中.除了那个问题,我的连接四个程序是完美无缺的.
private static void DropYellowDisk(String[][] grid) { int number = 0; Scanner keyboard = new Scanner (System.in); System.out.println("Drop a yellow disk at column (1–7): "); int c = 2*keyboard.nextInt()+1; for (int i=6;i>=0;i--) { if (grid[i][c] == " ") { grid[i][c] = "Y"; break; }} } private static void DropRedDisk(String[][] grid) { Scanner keyboard = new Scanner (System.in); System.out.print("Drop a red disk at column (1–7): "); int c = 2*keyboard.nextInt()+1; for (int i =6;i>=0;i--) { if (grid[i][c] == " ") { grid[i][c] = "R"; break; } }} 解决方法
从编程的角度来看,这只是愚蠢的(尽管我确信它具有指导性的优点). 但是在这种特殊情况下有一个简单的解决方法,因为你破坏的循环都在它们各自方法的末尾.因此,您可以使用return语句替换它们.即: private static void DropYellowDisk(String[][] grid) { for (int i=6;i>=0;i--) { if (grid[i][c] == " ") { grid[i][c] = "Y"; return; //break }} } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |