Java字符串的|分隔符转List实现方案

字符串处理

  • 问题背景
  • 代码实现
  • 代码优化
    • 原因分析
    • 实现方案
  • 注意事项
  • 异常处理
    • Maven未识别异常

问题背景

在项目组对账流程中,接收对方系统的对账文件,数据以|为分隔符,读取文件内容,分条入库。

代码实现

Java中将字符串转给list,可使用 Arrays.aslist 函数,实现代码如下所示。

import java.util.Arrays;
import java.util.List;public class DealData {public static void main(String[] args){String str = "北京|海淀|中关村|清华大学|清华园";List<String> strList = Arrays.asList(str.split("|"));System.out.println("转换出来的list为:"+strList);}
}

执行代码,在控制台打印结果如下所示。
在这里插入图片描述

代码优化

对于以上转换的结果,不是想要的,如何将北京,海淀,中关村 等逗号分割。

原因分析

分析结果为 Arrays.aslist 其实就是将字符串先转换为数组,再将数组转换为list,对于分隔符|,其无法识别,只能是单个字符分割展示。

实现方案

可将 分隔符|转换为逗号,,再进行list转换,如下所示。

public static void main(String[] args){String str = "北京|海淀|中关村|清华大学|清华园";String finalStr = str.replace("|",",");List<String> strList = Arrays.asList(finalStr.split(","));System.out.println("转换出来的list为:"+strList);
}

转换结果如下所示。
在这里插入图片描述

注意事项

注意其创建后,list长度不可改变,若要新增新元素,执行list的add方法,可能报错【java.lang.UnsupportedOperationException】。
在这里插入图片描述
实现方案可提前定义变长的ArrayList,并使用 list的addAll方法,即

List<String> strNewList = new ArrayList<>();strNewList.addAll(Arrays.asList("北京大学","清华大学"));System.out.println("转换出来最终的list为:"+strNewList);

执行结果如下所示。
在这里插入图片描述

异常处理

Maven未识别异常

异常编码
Caused by: java.util.zip.ZipException: error in opening zip file
分析原因
当我们重新安装电脑操作系统后,丢失部分信息,本地maven库里的jar包就会报这种错误。
处理方案
本地maven库对应报错的jar文件,全部删除,重新下载后再次运行即可

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

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

相关文章

clickhouse复现修复 结构需要清理 错误 structure need clean

在工作过程中&#xff0c;偶然发现clickhouse有时会出现数据目录结构需要清理的问题&#xff0c;但是很难复现&#xff0c;经过不断尝试&#xff0c;将clickhouse安装在设备上&#xff0c;然后写了一个程序持续插入clickhouse数据&#xff0c;然后突然拔掉设备的电源&#xff0…

项目底链华为链切换长安链经验总结

项目底链华为链切换长安链经验总结 前言业务需求分析智能合约重写k-v存储结构设计设计上链存储的结构体使用迭代器查询历史记录长安链合约编辑器历史记录返回错误材料上链非必传字段 Int 类型自动赋值长安链cmc工具部署合约ca证书需齐全分页查询截取处理&#xff0c;返回 nil处…

【机器学习】从流动到恒常,无穷中归一:积分的数学诗意

文章目录 微积分基础&#xff1a;理解变化与累积的数学前言一、积分概述与基础概念1.1 积分的定义与重要性1.1.1 积分的基本组成1.1.2 积分在机器学习中的应用 1.2 积分的历史与发展 二、积分的基本概念与计算2.1 不定积分2.1.1 不定积分的定义2.1.2 不定积分的计算方法2.1.3 实…

在瑞芯微RK3588平台上使用RKNN部署YOLOv8Pose模型的C++实战指南

在人工智能和计算机视觉领域,人体姿态估计是一项极具挑战性的任务,它对于理解人类行为、增强人机交互等方面具有重要意义。YOLOv8Pose作为YOLO系列中的新成员,以其高效和准确性在人体姿态估计任务中脱颖而出。本文将详细介绍如何在瑞芯微RK3588平台上,使用RKNN(Rockchip N…

电磁兼容(EMC):一文解读磁芯复合材料——塑磁

目录 01 塑磁的定义 02 塑磁的常见规格型号 03 塑磁材料的优点 04 塑磁的应用 塑磁,也称为注塑磁,是一种将磁性粉末注入到塑料基体中制成的复合磁体材料。以下是塑磁的定义、应用和材料特性的总结: 01 塑磁的定义 塑磁是以塑料为基体,通过特殊工艺在其中加入磁性粒子(…

五种msvcr100.dll丢失的解决方法,有效修复msvcr100.dll丢失错误!跟msvcr100.dll错误问题说拜拜!

在日常电脑使用过程中&#xff0c;尤其是运行某些应用程序或游戏时&#xff0c;可能会遇到“msvcr100.dll丢失”的错误提示。这个动态链接库&#xff08;DLL&#xff09;文件是Microsoft Visual C Redistributable for Visual Studio 2010的一部分&#xff0c;对于许多程序的正…

xdoj 数字个数统计

1-3 数字个数统计 3 时间限制&#xff1a;1S 题目描述&#xff1a; 输入两个三位正整数 A 和 B&#xff0c;在区间[A,B]之间&#xff0c;或在区间[B,A]之间&#xff0c; 完成统计任务&#xff1a; 3 的倍数数字个数、4 的倍数数字个数和 5 的倍数且不是 2 的倍数 的数字个数…

redis数据类型:list

数据结构 源码版本&#xff1a;7.2.2路径&#xff1a;src/adlist.h 关于list的 头文件中涉及到的这三个结构体如下 /* Node, List, and Iterator are the only data structures used currently. */ # 节点 typedef struct listNode {struct listNode *prev; # 前元素的指针s…

计算机网络(网络层)

1、ARP协议(已知ip地址得到mac地址) 在传输一个 IP 数据报的时候&#xff0c;确定了源 IP 地址和目标 IP 地址后&#xff0c;就会 通过主机「路由表」确定 IP 数据包下一跳。然而&#xff0c;网络层的下一层是数据链路层&#xff0c;所以我们还要知道「下一跳」的 MAC 地址。由…

springboot容器无法获取@Autowired对象,报null对象空指针问题的解决方式

示例错误代码&#xff1a; package com.uniin.ib.provider.iot.handle;Slf4j Component public class FireStringInboundHandler extends ChannelInboundHandlerAdapter {Autowiredprivate RsFireMonitoringMapper rsFireMonitoringMapper;Autowiredprivate RsFireAlertMapper…

5G CPE 主控CPU(上位机) 数据转发性能评估--基于5G模组和NEO3开发板评估

5G CPE ARM 主控CPU 数据转发性能评估--基于5G模组和NEO3开发板评估 摘要NEO3介绍演示架构网络拓扑硬件连接固件及驱动NEO固件NEO3串口驱动拔号及网络配置配置AT接口拔号NEO3网络接口性能测试5G空口性能NEO千兆网口性能验证NEO3 高速接口数据转发性能摘要 当前主流CPE多采用集…

Linux下学【MySQL】表中插入和查询的进阶操作(配实操图和SQL语句通俗易懂)

绪论​ 每日激励&#xff1a;挫折是会让我们变得越来越强大的重点是我们敢于积极的面对它。—Jack叔叔 绪论​&#xff1a; 本章是表操作的进阶篇章&#xff08;没看过入门的这里是传送门&#xff0c;本章将带你进阶的去学习表的插入insert和查找select&#xff0c;本质也就是…

[Rust开发]actix_webmiddleware 中间件

actix_web::middleware 在 Actix Web 框架中扮演着重要的角色&#xff0c;它允许开发者在处理 HTTP 请求和响应的过程中插入自定义的逻辑。中间件可以在请求到达处理函数之前或响应返回给客户端之前执行&#xff0c;从而实现日志记录、身份验证、数据验证、错误处理等功能。 为…

WebLogic T3反序列化漏洞(CVE-2018-2628)--vulhub

WebLogic T3反序列化漏洞(CVE-2018-2628) WebLogic在通信过程中使用T3协议传输数据&#xff0c;涉及到了序列化和反序列化操作。 T3协议概述 T3协议是Oracle的私有协议&#xff0c;所以公开的相关资料比较少&#xff0c;这里结合其他师傅的博客简单对T3协议进行一个简要分析…

redis和mysql的区别

Redis是一种非关系型数据库&#xff08;NoSQL&#xff09;&#xff0c;将数据存储在缓存中&#xff0c;这虽然提高了运行效率&#xff0c;但是保存时间却很短。将数据存储在内存中&#xff0c;因此读写速度非常快&#xff0c;特别适合用于需要高速访问的场景&#xff0c;如缓存…

OpenFeign快速入门 示例:黑马商城

使用起因 之前我们利用了Nacos实现了服务的治理,利用RestTemplate实现了服务的远程调用。这样一来购物车虽然通过远程调用实现了调用商品服务的方法,但是远程调用的代码太复杂了: 解决方法 并且这种调用方式比较复杂&#xff0c;一会儿远程调用&#xff0c;一会儿本地调用。 因…

计算机的错误计算(一百九十)

摘要 用两个大模型计算cot(1.234). 其中&#xff0c;1.234是以弧度为单位的角度。结果保留10位有效数字。实验表明&#xff0c;两个的计算公式虽然不同&#xff0c;但是都是正确的。然而&#xff0c;数值计算则是有问题的---包括每一个中间运算与结果。 例1. 计算cot(1.234)…

【QSS样式表 - ⑥】:QPushButton控件样式

文章目录 QPushBUtton控件样式QSS示例 QPushBUtton控件样式 常用子控件 常用伪状态 QSS示例 代码&#xff1a; QPushButton {background-color: #99B5D1;color: white;font-weigth: bold;border-radius: 20px; }QPushButton:hover {background-color: red; }QPushButton:p…

深度学习与图像处理(国产深度学习框架——飞桨官方指定教材)

计算机视觉从小白到大师之路 《深度学习与图像处理&#xff08;PaddlePaddle版&#xff09;》这一本就够了 1.引言 随着人工智能技术的飞速发展&#xff0c;各行各业对深度学习、图像处理相关领域的人才需求日益迫切。本书旨在通过系统的理论讲解与丰富的实战案例&#xff0…

Scala项目(图书管理系统)

3、service BookService package org.app package serviceimport org.app.dao.{BookDAO, BorrowRecordDAO} import org.app.models.{BookModel, BorrowRecordModel}import java.time.LocalDateTime import scala.collection.mutable.ListBuffer// 图书业务逻辑层 class BookS…