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. .Net中的插件框架Managed Extensibility Framework

    Managed Extensibility Framework(MEF)是微软的一个用来扩展.NET应用程序的框架,它最初为了满足Visual Studio里的编辑器的需求,比如说,延迟加载所有东西和 ...

  2. FolderSync :The various features and how to use them

    Help - Tacit Dynamics Help This page describes the various features of FolderSync and how to use the ...

  3. 求平方根C++

    求平方根,正根.曾经都不会.昨天看数学,看到了,写了出来.自己又小优化了一下,非常不错. // squareRoot.cpp -- 2011-08-29-01.04 #include "st ...

  4. Running multiple instances of Xamarin Studio on a Mac

    I love developing software on my MacBook Air! I got the latest version with the maximum possible spe ...

  5. MyEclipse Web项目调试

    1.发布项目 2.启动服务 服务有两种启动方式,Run Server和Debug Server Run Server是运行模式,Debug Server是调试模式 使用Debug Server模式启动 ...

  6. 【spring cloud】【IDEA】【maven】spring cloud多模块在idea上使用maven插件打包报错:程序包XXX不存在

    >>>>spring cloud 多模块 >>>>在idea上使用maven插件打包,欲打包成jar包后 进行部署 >>>> 报 ...

  7. iOS开发中的 ARC

    1. weak属性(弱引用) 被weak修饰的对象叫弱引用,不算对象持有者,一个方法执行完后会导致这个对象自动释放掉,并将对象的指针设置成nil,我使用GCD延时1000ms来验证,1000ms之后, ...

  8. struts2 select 默认选中

    jsp: <s:select list="#{'1':'男','2':'女'}" name="sex"/> action: private Stri ...

  9. synchronized与lock,哪个效率更高

    Java在一开始就提供了synchronized关键字,用于多线程之间的同步.它使用简便,不会出现拿锁之后不归还的情况,可以避免一些编程错误. 而jdk5时提供的concurrent包里,有一个Loc ...

  10. 你可能不知道的5 个强大的HTML5 API 函数

    HTML5提供了一些非常强大的JavaScript和HTML API,来帮助开发者构建精彩的桌面和移动应用程序.本文将介绍5个新型的API,希望对你的开发工作有所帮助. 1.  全屏API(Fulls ...