break的使用方法
private static void test() {
for (int i = 0; i < 5; i++) {
for (int j = 0; j < 5; j++) {
System.out.println("仅仅是跳出最里面的for循环"+i+"/"+j);
if(j==2)
{
break;//仅仅是跳出最里面的for循环
}
}
}
System.out.println("end");
}
//结果
private static void test2() {
a:for (int i = 0; i < 10; i++) {
for (int j = 0; j < 10; j++) {
System.out.println("跳到指定代码块"+i+"/"+j);
if(j==2)
{
break a;//跳到指定代码块
}
}
}
System.out.println("end");
}
结果://
import java.util.LinkedHashMap;
import java.util.Map;
import java.util.Map.Entry;
public class test {
private static LinkedHashMap<Integer, Integer> linkedHashMap;
private static LinkedHashMap<Integer, Integer> nodeleteKey;
private static int sum;
public static void main(String[] args) {
linkedHashMap = new LinkedHashMap<Integer, Integer>();
nodeleteKey = new LinkedHashMap<Integer, Integer>();
nodeleteKey.put(5, 5);// key为5的不能删除
for (int i = 0; i < 25; i++) {
linkedHashMap.put(i, i * 10);
sum += i;
trimToSize(i);
}
System.out.println(linkedHashMap.toString());
}
/**
* @param i 过滤集合。删除最早插入的,不删除指定不删除的key
*/
private static void trimToSize(int i) {
while (true) {
synchronized ("trimToSize") {
// 符合条件。退出
if (sum < 100) {
break;
}
// 获取链表的第一个元素,也就是最先放进去的元素
Map.Entry<Integer, Integer> toEvict = null;
a: for (Map.Entry<Integer, Integer> entry : linkedHashMap
.entrySet()) {
toEvict = entry;
if (toEvict != null) {
for (Entry<Integer, Integer> iterable_element : nodeleteKey
.entrySet()) {
Integer value002 = iterable_element.getValue();
if (!toEvict.getKey().equals(value002)) {
// 仅仅要不是不能被删除的key即可了,就跳出至a,运行a代码块{}后面的代码
break a;
}
}
}
}
// 不是不能删除的元素
if (toEvict != null) {
Integer key = toEvict.getKey();
Integer value = toEvict.getValue();
linkedHashMap.remove(key);
sum -= i;
System.out.println("remove=" + key);
}
}
}
}
}
结果://
break的使用方法的更多相关文章
- Java笔记4-do while循环,break,修饰符,方法的调用
do while循环语法:do{ //循环体}while(条件表达式); 注:它是先执行循环体,后再判断的循环结构. 如:int i = 0;do{ System.out.println(" ...
- java中 label 配合 break continue 使用方法
转 https://www.jianshu.com/p/7954b61bc6ee java中 label 配合 break continue 使用的其实是比较少的. 这种做法在业务代码中比较少见. 在 ...
- shapely and geos break在distance方法
问题 from shapely.geometry import Point print Point(0,0).distance(Point(1,1)) 报错 python: GeometryCompo ...
- Python中的break和continue的使用方法
一.continue的使用方法(结束当前的循序,进行下一个数的循环) # *************************************************************** ...
- js对象克隆方法
方法1: function clone(obj){ var o; switch(typeof obj){ case 'undefined': break; case 'string' : o = ob ...
- 方法构造和方法重载之奥特曼与大boss之战
知识点的总结: 1.类中的方法分为两类:1.普通方法: 2.构造方法. 2.构造方法的格式: public 类名(数据类型 参数名,...){ } 3.构造方法的用途: 1.实例化对象. 2. ...
- DataTable、List使用groupby进行分组和分组统计;List、DataTable查询筛选方法
DataTable分组统计: .用两层循环计算,前提条件是数据已经按分组的列排好序的. DataTable dt = new DataTable(); dt.Columns.AddRange(new ...
- WinForm容器内控件批量效验是否允许为空?设置是否只读?设置是否可用等方法分享
WinForm容器内控件批量效验是否允许为空?设置是否只读?设置是否可用等方法分享 在WinForm程序中,我们有时需要对某容器内的所有控件做批量操作.如批量判断是否允许为空?批量设置为只读.批量设置 ...
- js计算系统当前日期是星期几的几种方法
方法一: // 计算系统当前是星期几 var str = "今天是星期" + "日一二三四五六".charat(new date().getday()); 方法 ...
随机推荐
- 5-05. QQ帐户的申请与登陆(25)(map运用)(ZJU_PAT)
题目链接:http://pat.zju.edu.cn/contests/ds/5-05 实现QQ新帐户申请和老帐户登陆的简化版功能. 最大挑战是:据说如今的QQ号码已经有10位数了. 输入格式说明: ...
- Java 中的 int 与 Integer 用于 List<Integer> 时,以及通过打印变量检測程序执行和函数调用次数计数
总结一下近期做的东西中遇到的问题 1. Java 中的 int 与 Integer 用于 List<Integer> 时 两者之间的关系都是非常清楚的.int 是基本数据类型,存储的是值 ...
- 乘法器的Verilog HDL实现
原文链接:http://www.cnblogs.com/shengansong/archive/2011/05/23/2054401.html 1. 串行乘法器 两个N位二进制数x.y的乘积用简单的 ...
- 《iOS开发指南:从零基础到App Store上架(第2版)》
<iOS开发指南:从零基础到App Store上架(第2版)> 基本信息 作者: 关东升 丛书名: 图灵原创 出版社:人民邮电出版社 ISBN:9787115348029 上架时间:201 ...
- C语言:指针的几种形式
字符串的两种形式: 1.字符数组 char name[32] = “zhangsan”;//只能在初始化时这样做 strcpy(name,”lisi”);//整体赋值只能通过s ...
- 【转载】关于大数据库的一些不错的GitHub项目
优秀大数据GitHub项目一览 http://blog.csdn.net/YaoXTao/article/details/50540485
- 实用的表格内省略号和换行(兼容IE6)
让连续的英文数字字符换行显示 word-break: break-all; 让单行文字超出的时候使用点点点表示 white-space: nowrap; overflow: hidden; text- ...
- [转] SSH免密码登陆以及穿越跳板机
原文链接:http://www.cnblogs.com/lucantang/p/3315329.html SSH免密码登陆以及穿越跳板机 1. 免密码直连 [user@hostA ~] $ssh ...
- Ensemble_learning 集成学习算法 stacking 算法
原文:https://herbertmj.wikispaces.com/stacking%E7%AE%97%E6%B3%95 stacked 产生方法是一种截然不同的组合多个模型的方法,它讲的是组合学 ...
- socketio server推送
假设面试官问你:要把server端的数据时时显示在浏览器上怎么实现?我想有非常多人会回答使用Ajax技术定时去訪问一个资源,没错,使用Ajax的确能实现.但面试官要的绝对不是这个答案. 由于使用Aja ...