精华内容
下载资源
问答
  • 2021-04-08 08:43:20

    双层for 循环代码

    for(int i=0 ;i

    for(int j =0 ;j< list2.size();j++){

    if(list1.get(i).getName().equals(list2.get(j).getName())){

    list1.get(i).setScholarship(list1.get(i).getScholarship().add(list2.get(j).getScholarship()));

    list1.get(i).setTotalGrade(list1.get(i).getTotalGrade().add(list2.get(j).getTotalGrade()));

    }

    }

    }

    java8 stream

    list1.stream().

    forEach(i -> list2.stream().anyMatch(a -> {

    boolean judge = false;

    if (a.getName().equals(i.getName())) {

    i.setScholarship(i.getScholarship().add(a.getScholarship()));

    i.setTotalGrade(i.getTotalGrade().add(a.getTotalGrade()));

    judge = true;

    }

    return judge;

    }));

    这是我目前完成我需求的方式。。。。。。。。。。。。。。。。如果大神们有其他更好的方法,请在下方评论区留下方法。

    更多相关内容
  • 在二维数组的遍历中,我们经常使用双层for循环。在某些时候,我们并不需要遍历整个二维数组。当条件满足时就应该终止for循环。但是,直接在内层循环中break并不会让外层循环也终止。 二.解决方案 使用for…else…...
  • /**** @author Administrator* 结束双层for的方法有两个方法**1,标签方法来结束双层for循环*/public class Test8_4_05 {public static void main(String[] args) {//over是用来结束双层for循环语句Over:{for(int i ...

    /**

    *

    * @author Administrator

    * 结束双层for的方法有两个方法

    *

    * 1,标签方法来结束双层for循环

    */

    public class Test8_4_05 {

    public static void main(String[] args) {

    //over是用来结束双层for循环语句

    Over:{

    for(int i = 0;i<10;i++) {

    System.out.println("uo------------>"+i);

    for (int j = 0; j <10; j++) {

    if(j==5) {

    break Over;

    }

    System.out.print(i+"+"+j+"="+i+j+"\t");

    }

    }

    }

    }

    }

    第2个方法:boolean 标记来结束双层for循环的方法

    boolean f = false;//定义一个布尔类型

    for(int i = 0;i<10;i++) {

    System.out.println("uo------------>"+i);

    for (int j = 0; j <10; j++) {

    if(j==5)  {   //做一个判断,如果判断成立,将进入if内部

    System.out.println("结束程序。。。");

    f = true;//成立的话,就将上面定义的布尔类型重新赋值true

    break;//直接结束内循环

    }

    System.out.print(i+"+"+j+"="+i+j+"\t");

    }

    if(f) {     //f是true就进入这个if判断

    break;//直接结束外部循环

    }

    }

    展开全文
  • 双层for循环赋值

    2021-11-24 11:54:55
    List<Map<String, Object>> cartlist = new ArrayList<...for(String s:shop_unique) { //遍历购物车数据 //购物车处理-加入各门店购物车并删除原购物车数据 List<Map<String,Object>&
    List<Map<String, Object>> cartlist = new ArrayList<>();
    String []shop_unique=shop_uniques.split(",");
    String []id=ids.split(",");	
    //遍历门店
    for(String s:shop_unique) {
    	//遍历购物车数据
    	//购物车处理-加入各门店购物车并删除原购物车数据
    	List<Map<String,Object>> goodCart_list=shoppingDao.querySupplierCart(id);//查询购物车
    	for (Map<String, Object> map : goodCart_list) {
    		map.put("shop_unique", s);
    		cartlist.add(map);
    	}
    }
    
    展开全文
  • 使用Map优化双层for循环

    千次阅读 2021-05-23 14:54:22
    使用Map优化双层for循环 借鉴原文 :https://blog.csdn.net/qq_45752401/article/details/109526381 1.双层for循环使用场景 一般我们用于合并两个或者多个对象。因为我们实际需要的数据,被两个或者多个对象所持有,...

    使用Map优化双层for循环

    借鉴原文 :https://blog.csdn.net/qq_45752401/article/details/109526381

    1.双层for循环使用场景

    一般我们用于合并两个或者多个对象。因为我们实际需要的数据,被两个或者多个对象所持有,那么我们有时就需要根据共同特征来合并成一个对象。

    2.为什么要使用Map替换双层for:

    通常情况下,我们对于数据量比较多的时候,如果使用的双层for,会大大降低程序运行效率,对于数据量相对较少,使用双层for嵌套,是察觉不到什么效果的。下面我为大家模拟一万条数据的情况下,合并成一个集合的效率时间

    3.准备数据

    3.1 User.java

    public class User {
        private String uid;
        private String name;
        private String sex;
    
    
        @Override
        public String toString() {
            return "User{" +
                    "uid='" + uid + '\'' +
                    ", name='" + name + '\'' +
                    ", sex='" + sex + '\'' +
                    '}';
        }
    
        public User(String uid, String name) {
            this.uid = uid;
            this.name = name;
        }
    
        public User() {
        }
    
        public String getUid() {
            return uid;
        }
    
        public void setUid(String uid) {
            this.uid = uid;
        }
    
        public String getName() {
            return name;
        }
    
        public void setName(String name) {
            this.name = name;
        }
    
        public String getSex() {
            return sex;
        }
    
        public void setSex(String sex) {
            this.sex = sex;
        }
    }
    
    

    3.2 Person.java

    public class Person {
        private String pid;
        private String sex;
    
        public Person(String pid, String sex) {
            this.pid = pid;
            this.sex = sex;
        }
    
        public Person() {
        }
    
        public String getPid() {
            return pid;
        }
    
        public void setPid(String pid) {
            this.pid = pid;
        }
    
        public String getSex() {
            return sex;
        }
    
        public void setSex(String sex) {
            this.sex = sex;
        }
    
        @Override
        public String toString() {
            return "Person{" +
                    "pid='" + pid + '\'' +
                    ", sex='" + sex + '\'' +
                    '}';
        }
    }
    

    4.测试案例

    4.1模拟数据

    public class ForUpdate {
    
        public static void main(String[] args) {
    
    		// 模拟一万条数User数据作为测试
            ArrayList<User> ulist = new ArrayList<>();
            for (int i = 1; i <= 10000; i++) {
                ulist.add(new User(i+"","冷言"+i));
            }
            // 模拟一万条Person数据作为测试
            ArrayList<Person> plist = new ArrayList<>();
            for (int i = 1; i < 10000; i++) {
                plist.add(new Person(i+"","男"+i));
            }  
        }
    }
    

    4.2使用双层for合并,展示运行时间

    // 获取当前系统时间,单位毫秒值
    		long start = System.currentTimeMillis();
    		// 遍历集合
            for (User u : ulist) {
                for (Person p : plist) {
                	// 如果user对象的id等于person对象的id
                    if (u.getUid().equals(p.getPid())){
                    	// 需要的数据
                        u.setSex(p.getSex());
                    }
                }
            }
            // 展示当前系统时间,单位毫秒值
            System.out.println(System.currentTimeMillis()-start);
    

    4.3,使用Map合并,展示运行时间

    以下为固定格式,主要是把plist集合的数据封装到Map中:
    Map<String,集合内对象> list2Map = 集合名.stream().collect(Collectors.toMap(集合内对象::共同特征, Function.identity()));
    实例:以下执行效果是,我想把plist里面我需要的数据,合并到ulist中,他们有个共同特征pid和uid

    // 为固定格式,plist需要的数据;Person数据对象;getPid为String类型共同特征
     Map<String,Person> list2Map = plist.stream().collect(Collectors.toMap(Person::getPid, Function.identity()));
     		// 生成当前系统时间,单位毫秒值
            long start = System.currentTimeMillis();
            // 遍历集合
            for (User user : ulist) {
            	// 通过user的uid,获取map集合的对象
                Person person = list2Map.get(user.getUid());
                // 如果获取到
                if(person != null){
                	// 执行业务代码   我这里是把person里面的sex放置到user的sex中
                    user.setSex(person.getSex());
                }
            }
            // 打印当前系统时间,单位毫秒值
            System.out.println(System.currentTimeMillis()-start);
    

    从上面来看,我们不难看出,双层for使用的时间,是Map的好多倍。对于数据量少的,这里我就不展示了,自己自行选择。如果是数据量比较大的,使用Map代替双层for

    展开全文
  • } 原本在第一层for循环里面根据vSubstation.id查找数据库,要查找三百次数据库最起码 得一秒钟,修改后100ms左右 结论:各种连接更加消耗性能,与浏览器的tcp连接,与数据库的连接,不要一次有多个请求,很消耗性能
  • 用外层for循环实现需要走的趟数(arr.length-1); 用内层for循环实现每一次交换的趟数(arr.length-i-1,j从0开始); 交换两个变量 1.2 举例 数组:[5, 4, 3, 2, 1] 第一趟:[4, 3, 2, 1, 5] 共交换了4次; 第二...
  • functionunique(arr){ for(vari=0;i<arr.length;i++){ for(varj=i+1;j<arr.length;j++){ if(arr[i]==arr[j]){ arr.splice(j,1); j--; } } } returnar...
  • package hello; import java.util.Scanner; public class Test { public static void main(String[] args) { ...for(int i=0;i<n;i++){ for(int i1 = 0; i1 <= i;i1++) { System.out.print("#"); } System.out
  • 如何跳出当前循环 <script> let a=0; let b=0; for(let i=0 ;i<5;i++){ for(let j=0 ;j<5;j++){ if(a==1){ continue }else{ a++ } } b++ } console.log(a) console.log(b) </script>...
  • java双层for循环

    2021-04-11 15:23:11
  • 首先先来一个案例简单模拟一下:List wifes = new ArrayList();...for(int i=0;i<8000;i++){wifes.add(new Wife(i, i+"的妻子", "000"+i));}for(int i=0;i<8000;i++){husbands.add(new Husband(i, "...
  • 双层for循环实现图形的打印 为了进一步加深对于for循环的理解,这次通过案例来学习。通过*和空格“ ”的结合来输出打印for循环的结果。画出一些基本的图形。 1.首先是正方形,不必多说,两次for循环可以解决。 2.在...
  • 双层for循环的理解

    千次阅读 2020-04-04 16:44:52
    双层for循环对于我这种小白来说简直有点烧脑,因为刚接触JS的话,逻辑思维还没有培养起来,这个时候碰到这样的循环的时候就有些理解吃力了,下面我讲一下自己的理解,如果其他大佬有不同意见欢迎留言。 <script&...
  • HashMap解决双层For循环效率问题

    千次阅读 2019-12-31 21:48:35
    测试10w条数据双层for循环耗时 import java.util.ArrayList; import java.util.List; /** * @author 954L * @create 2019/12/31 20:42 */ public class Main { public static void main(String[] args) {...
  • Python双层for循环

    千次阅读 2019-11-14 17:22:26
    matrix0 = [[1, 2], [3, 3], [2, 1]] print 'matrix0:', matrix0...matrix1 = [[1 for i in range(2)] for i in range(3)] print 'matrix1:', matrix1 matrix2 = [[0 for i in range(2)] for i in range(3)] print...
  • 1. 代码 var str = ''; for(var i=1; i<= 10; i++) { for(var j=1; j<=i; j++) { str += j + '×' + i + '=' + i * j + '\t'; } str += '\n'; } console.log(str); 2. 效果
  • Java打印三角形(双层for循环) 1.第一个三角形: 打印样式: 外层for循环控制行数,内层for循环控制“*”的个数 public static void demo01(){ //行数:4行 for(int i=1;i<=4;i++){ /* 找规律: 第一行...
  • Interview_03:双层for循环之break

    千次阅读 2020-10-28 20:32:41
    双层for循环之break 问题: 双层for循环,在内层循环中当满足某些条件时使用了break 问:执行内层break时结束的是内层循环,还是内外层循环都结束? 答案: 只结束内层循环 代码演示: package ...
  • 其他情况为市区级功能 然后分别统计市,区,市区分别有多少项 现在的情况是在库里面查出来的数据有一百多万条 而我的处理方式也是很粗暴,直接双层for循环暴力分组 我先将所有的itemCode相同的所有数据划分为一组 ...
  • for循环 for(初始化表达式;循环条件表达式;循环后的操作表达式){ 循环体 } 需求1:求 1 到 10000 之间偶数的合 // for循环 // for(初始化表达式;循环条件表达式;循环后操作表达式){ // 循环体 /...
  • Java双层for循环的解释

    万次阅读 多人点赞 2018-03-24 13:25:09
    首先介绍最常见的双层for循环,写这个的原因就是看清楚for循环的多样化,按照当时需求去写for循环,希望你们能理解,少走弯路,写的不好的,写评论,我会修改的 i++ :是先运行,在加1 ++i :是先加1,在运行 ...
  • for(var i=1; i<= 10; i++) { // 外层循环控制行数 for(var j=i; j<=10; j++) { // 里层循环打印的个数不一样 str += '❤'; } str += '\n'; } console.log(str); 或者 var str = ''; for(var i=1; i<=...
  • 小程序双层for循环

    千次阅读 2020-05-06 17:10:38
    // wx:for-item的值默认为item,第二层循环需要重新起个名字 <view class="container" wx:for="{{categoryVos}}" wx:for-item="item" > <view class="title">服务分类:{{item.missionCategoryName}}&...
  • stream替代双层for循环

    千次阅读 2020-05-29 12:12:00
    这是在处理业务中遇到的: 数据如下: public class Book { private String bookId; private String name; private String depName; private String authDepName; public String getBookId() { ...
  • 两种方案优化实际开发中的双层for循环语句 附代码和实例 现有如下需求,需在订单信息类中根据用户信息类的userId匹配到对应的信息并输出商品skuId。 先给出实体类:用户信息类UserInfo和订单信息类OrderInfo。用户...
  • python 双层for循环的跳出

    千次阅读 2020-09-04 23:26:50
    1.while.....else的使用... for循环正常执行完成后,else会继续执行 break会跳出for循环,else部分 3,双层for循环的跳出 当次循环正常结束的时候才会执行else中的语句(如果当次循环执行了break,那么else不会执行) 

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 14,816
精华内容 5,926
关键字:

双层for循环

友情链接: readxml.zip