我们都知道break结束最近一层循环,continue结束本次循环
那如果我满足条件的时候想要结束两层循环怎办?
java还真有这种办法
//给外层循环一个名字 outLoop: while (!queue.isEmpty()) { Graph7.Node node = queue.remove(); Map<Graph7.Node, Graph7.Edge> rowMap = edgeTable.row(node); for (Graph7.Node node1 : rowMap.keySet()) { Graph7.Edge edge = edgeTable.get(node, node1); if (!node1.isVisit() && edge != null && edge.getC() > 0) { result.put(preNode, node1, edge.getC()); node1.setVisit(true); System.out.println(node1); preNode = node1; queue.add(node1); //满足条件,结束外层循环 if (node1.equals(end)) { break outLoop; } break; } } }