Java for/forEach 不支持重新賦值

 loop中不支持變量重新賦值

Local variable printTotal defined in an enclosing scope must be final or effectively final

需要優化,這樣寫太羅嗦。

		JasperPrint printTotal = null;for(JasperPrint print:printList) {if(printTotal==null) {/***************************************/printTotal = print;
/***************************************/}else {List<JRPrintPage> pageList = print.getPages();pageList.forEach((JRPrintPage page)->{printTotal.addPage(page);});}}printList.forEach((JasperPrint print)->{if(printTotal==null) {/***************************************/printTotal = print;
/***************************************/}List<JRPrintPage> pageList = print.getPages();pageList.forEach((JRPrintPage page)->{printTotal.addPage(page);});});
		List<JasperPrint> printTotalList = new ArrayList();printList.forEach((JasperPrint print)->{if(printTotalList.size()==0) {printTotalList.add(0, print);}else {List<JRPrintPage> pageList = print.getPages();pageList.forEach((JRPrintPage page)->{printTotalList.get(0).addPage(page);});}});

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/185609.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

echarts 对数坐标轴

echarts 对数坐标轴 描述 Echarts 柱状图数据大小差距过大&#xff0c;例如一个值是100000&#xff0c;一个值是5&#xff0c;值小的柱子就不会显示出来。 解决&#xff0c;使用对数坐标轴 option {tooltip: {trigger: axis,},xAxis: {type: category,data: [Mon, Tue, We…

【Linux基础开发工具】yum生态vim的配置与使用

目录 前言 1. Linux 软件包管理器 yum 1.1 什么是yum 1.2 快速上手yum 1.3 yum生态 2. Linux编辑器vim 2.1 vim的模式 2.2 vim使用技巧 3. vim编辑器辅助功能配置 3.1 配置 3.2 用户sudo权限配置 总结 前言 Linux基础指令与权限之后&#xff0c;Linux系统开发工具的使用…

【SparkSQL】DataFrame入门(重点:df代码操作、数据清洗API、通过JDBC读写数据库)

【大家好&#xff0c;我是爱干饭的猿&#xff0c;本文重点介绍DataFrame的组成、DataFrame的代码构建、DataFrame的入门操作、词频统计案例、电影数据分析、SparkSQL Shuffle 分区数目、SparkSQL 数据清洗API、DataFrame数据写出、DataFrame 通过JDBC读写数据库&#xff08;MyS…

DHCP、ARP、FTP、DNS、VRRP、STP、报文交互流程

目录 一、DHCP 1、DHCP终结 1、DHCP discover 2、DHCP offer 3、DHCP request 4、DHCP ack 5、DHCP request 6、DHCP 续租 2、DHCP终结 二、ARP 1、ARP类型 动态ARP 静态ARP ARP代理 ARP代理的分类&#xff1a;路由式代理、VLAN内的ARP代理、VLAN间的ARP代理。 6…

行情分析——加密货币市场大盘走势(11.30)

大饼已经形成了底背离&#xff0c;即MACD往下走&#xff0c;而价格还在往上走&#xff0c;这种往往后续会大跌。我们继续把空单拿好&#xff0c;已经持仓的无需加仓。多次上涨都一直不能突破&#xff0c;也说明多空和空军力量都很强&#xff0c;等待后续出方向&#xff0c;而笔…

HarmonyOS入门开发(三) 持久化存储Preferences

接入鸿蒙几天以来&#xff0c;发现各种和Android不一样的地方&#xff0c;今天来看一下Preferences存储 在Android中比如有ShardPreferences、Mmkv这些持久化存储方式&#xff0c;开发起来很方便&#xff0c;读取速度也很快&#xff0c;在鸿蒙里面也提供了对应的持久化存储方案…

WordPress两种方法实现上传媒体图片文件自动重命名

我们发布文章时&#xff0c;会上传一些图片、音频之类的文件。但是WordPress没有自动 给新上传文件重命名的功能&#xff0c;逐个文件去重命名那就太麻烦了&#xff0c;那么我们改如何自动给上传的媒体文件图片重命名呢&#xff1f; 我在网站搜索了些上WordPress上传媒体文件自…

‘tsc‘ 不是内部或外部命令,也不是可运行的程序 或批处理文件。

最近在用nodejs typescript 某游戏服务器在做一些研究 nodejs-tcs 问题描述&#xff1a; 1.使用命令npm install -g typescript安装typescript后&#xff0c;输入 tsc命令&#xff0c;一直报错 tsc 不是内部或外部命令&#xff0c;也不是可运行的程序 或批处理文件。 2.目…

为什么要引入内联函数

引入内联函数的主要目的是&#xff0c;用它替代C语言中表达式形式的宏定义来解决程序中函数调用的效率问题。 #define ExpressionName(Var1, Var2) (Var1Var2)*(Var1-Var2) 这种宏定义在形式及使用上像一个函数&#xff0c;但它使用预处理器实现&#xff0c;没有了参数压栈&a…

安全漏洞XSS、CSRF、SQL注入以及DDOS攻击 怎么解决

四种常见的安全漏洞和攻击类型&#xff1a; 1、XSS&#xff08;跨站脚本攻击&#xff09;&#xff1a;XSS攻击是一种利用网页应用程序对用户的信任&#xff0c;向目标网页中注入恶意脚本的攻击方式。攻击者通过在网页中插入恶意脚本&#xff0c;当用户访问该网页时&#xff0c…

VBA代码解决方案第8讲:用FindPrevious进行重复搜索及利用LIKE查找

《VBA代码解决方案》(版权10028096)这套教程是我最早推出的教程&#xff0c;目前已经是第三版修订了。这套教程定位于入门后的提高&#xff0c;在学习这套教程过程中&#xff0c;侧重点是要理解及掌握我的“积木编程”思想。要灵活运用教程中的实例像搭积木一样把自己喜欢的代码…

LeetCode(44)存在重复元素 II【哈希表】【简单】

目录 1.题目2.答案3.提交结果截图 链接&#xff1a; 存在重复元素 II 1.题目 给你一个整数数组 nums 和一个整数 k &#xff0c;判断数组中是否存在两个 不同的索引 i 和 j &#xff0c;满足 nums[i] nums[j] 且 abs(i - j) < k 。如果存在&#xff0c;返回 true &#xf…

mysql使用--用户与权限

1.用户管理 查看用户信息&#xff0c;如&#xff1a;select user, host from mysql.user; 1.1.创建用户 可使用create user语句创建多个可使用客户端连接服务端的用户。 创建用户时&#xff0c;一般需指定&#xff1a; (1).用户名 (2).主机名 指明客户端可在那些机器上启动&am…

【UE】UEC++委托代理

【UE】UEC委托代理 一、委托的声明与定义 #pragma once#include "CoreMinimal.h" #include "GameFramework/GameModeBase.h" #include "DelegateGameMode.generated.h"// // Declare DECLARE_DELEGATE // DECLARE_DELEGATE(FDeclareDelegate_…

【Android踩过的坑】13.Android Studio 运行成功,但APP没有安装上的问题

【Android踩过的坑】13.Android Studio 运行成功&#xff0c;但APP没有安装上的问题 解决办法&#xff1a; 在app的build.gradle文件下添加以下代码 android {...//android.useNewApkCreatorfalse 在高版本gradle下无效&#xff0c;添加以下代码解决冲突即可packagingOptions…

【Linux】:信号(一)产生

信号 一.前台进程和后台进程1.前台进程2。后台进程3.总结 二.自定义信号动作接口三.信号的产生1.键盘组合键2.kill信号进程pid3.系统调用1.kill函数2.raise函数3.abort函数 四.异常五.软件条件六.core文件 一.前台进程和后台进程 1.前台进程 一个简单的代码演示 像这种程序在…

java中反射知识点概念

这里写自定义目录标题 1.什么是反射--动态注入&#xff1f;2.反射的诞生背景3.反射的意义4.反射后可以做些什么5.反射相关的主要API6.反射的优缺点7.反射和不反射基础使用8.工厂模式使用反射8.1首先我们来看看不使用反射的情况&#xff1a;8.2使用反射的情况&#xff1a; 9.Jav…

用训练好的模型在Yolov8上进行推理演示python代码,含图像检测,视频推理,实时摄像头检测。

一&#xff0c;图像检测 用已经训练好的模型进行图像推理检测&#xff0c;运行时注意修改图像和模型路径。 # 引入opencv import cv2# 引入YOLO模型 from ultralytics import YOLO# 打开图像 img_path "./img.jpg" # 这里修改你图像保存路径# 打开图像 img cv2.…

vue多选框 某些状态下禁止选择

在做vue多选框的时候&#xff0c;禁止多选&#xff0c;当时想都没想直接在computed里面把row-selection 直接当成方法写在里面了&#xff0c;但是后来发现一些状态不能用&#xff0c;比如清楚多选&#xff0c;selectedRowKeys没有效果&#xff0c;这里记录一下 // 最开始的代码…