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的使用方法的更多相关文章

  1. Java笔记4-do while循环,break,修饰符,方法的调用

    do while循环语法:do{ //循环体}while(条件表达式); 注:它是先执行循环体,后再判断的循环结构. 如:int i = 0;do{ System.out.println(" ...

  2. java中 label 配合 break continue 使用方法

    转 https://www.jianshu.com/p/7954b61bc6ee java中 label 配合 break continue 使用的其实是比较少的. 这种做法在业务代码中比较少见. 在 ...

  3. shapely and geos break在distance方法

    问题 from shapely.geometry import Point print Point(0,0).distance(Point(1,1)) 报错 python: GeometryCompo ...

  4. Python中的break和continue的使用方法

    一.continue的使用方法(结束当前的循序,进行下一个数的循环) # *************************************************************** ...

  5. js对象克隆方法

    方法1: function clone(obj){ var o; switch(typeof obj){ case 'undefined': break; case 'string' : o = ob ...

  6. 方法构造和方法重载之奥特曼与大boss之战

    知识点的总结: 1.类中的方法分为两类:1.普通方法: 2.构造方法. 2.构造方法的格式:  public 类名(数据类型  参数名,...){ } 3.构造方法的用途:  1.实例化对象.  2. ...

  7. DataTable、List使用groupby进行分组和分组统计;List、DataTable查询筛选方法

    DataTable分组统计: .用两层循环计算,前提条件是数据已经按分组的列排好序的. DataTable dt = new DataTable(); dt.Columns.AddRange(new ...

  8. WinForm容器内控件批量效验是否允许为空?设置是否只读?设置是否可用等方法分享

    WinForm容器内控件批量效验是否允许为空?设置是否只读?设置是否可用等方法分享 在WinForm程序中,我们有时需要对某容器内的所有控件做批量操作.如批量判断是否允许为空?批量设置为只读.批量设置 ...

  9. js计算系统当前日期是星期几的几种方法

    方法一: // 计算系统当前是星期几 var str = "今天是星期" + "日一二三四五六".charat(new date().getday()); 方法 ...

随机推荐

  1. if....else的基本用法

    if....else...是基本流程控制语句 1.基本格式: if(条件){ }else if(条件){ }else if(条件){ } ........ else{ } 解释:其中else if.e ...

  2. ZOJ3673:1729

    1729 is the natural number following 1728 and preceding 1730. It is also known as the Hardy-Ramanuja ...

  3. KJBitmap使用方法

    摘要 本文原创,转载请注明地址:http://kymjs.com/code/2015/03/25/01 摘要 好像最近一个月都没有写博客了,正好伴着KJFrameForAndroid 更新v2.14版 ...

  4. JS浮点数运算

    //乘法函数,用来得到精确的乘法结果 //说明:javascript的乘法结果会有误差,在两个浮点数相乘的时候会比较明显.这个函数返回较为精确的乘法结果. //调用:accMul(arg1,arg2) ...

  5. Go 语言简介(上)— 语法

    周末天气不好,只能宅在家里,于是就顺便看了一下Go语言,觉得比较有意思,所以写篇文章介绍一下.我想写一篇你可以在乘坐地铁或公交车上下班时就可以初步了解一门语言的文章.所以,下面的文章主要是以代码和注释 ...

  6. poj 3041 Asteroids 题解

    Asteroids Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 20686   Accepted: 11239 Descr ...

  7. BEGINNING SHAREPOINT&#174; 2013 DEVELOPMENT 第14章节--使用Office Services开发应用程序 总结

    BEGINNING SHAREPOINT® 2013 DEVELOPMENT 第14章节--使用Office Services开发应用程序  总结         SP2013新的server端Off ...

  8. iOS:UITableView表格视图控件

    UITableView:表格视图控件,继承滚动视图控件UIScrollView,(类似于UIPickerView选择器,它主要通过设置数据源代理和行为代理实现协议来设置单元格)    对表格的操作主要 ...

  9. C++用iconv进行页面字符转换

    在对HTML页面进行爬取时,总会遇到一些不同的编码,而我们通常都不会一一对这些编码进行处理,而是集体转换成相同的编码,也易于装入数据库.此时,iconv便成为一个很方便的工具. iconv 头文件&q ...

  10. 第三章 JVM内存回收区域+对象存活的判断+引用类型+垃圾回收线程

    注意:本文主要参考自<深入理解Java虚拟机(第二版)> 说明:查看本文之前,推荐先知道JVM内存结构,见<第一章 JVM内存结构> 1.内存回收的区域 堆:这是GC的主要区域 ...