【Java split】split() 函数分割字符串出现空格的问题以及带转义符号的字符串分割为数组(106)

本文重点:
1.带转义符号的字符串转数组格式;
2.split() 函数分割空字符串后数组中元素前出现空格;
3.split() 函数分割需注意的问题;

测试代码:


import java.util.ArrayList;
import java.util.Arrays;
import java.util.Iterator;
import java.util.List;public class test06 {public static void main(String[] args) {List<String> res = Arrays.asList("北京","上海","广州","安徽");System.out.println("res:"+res);	String a = "[\"北京\",\"安徽\",\"安顺\"]";String b = a.replace("[", "").replace("]", "").replaceAll("[\\[\\]\"]", "").trim();String[] c = b.split(",");String d = String.join(",", c);System.out.println("a:"+a);System.out.println("b:"+b);System.out.println("d:"+d);List<String> list = b.isEmpty()? new ArrayList<>():Arrays.asList(b.split(","));System.out.println("list:"+list);List<String> list2 = new ArrayList();for(String s : list) {String ss = s.trim();if(res.contains(ss)) {System.out.println("进来:"+ss);list2.add(ss);}}System.out.println("list2:"+list2);	}
}

测试输出:

res:[北京, 上海, 广州, 安徽]
a:["北京","安徽","安顺"]
b:北京,安徽,安顺
d:北京,安徽,安顺
list:[北京, 安徽, 安顺]
进来:北京
进来:安徽
list2:[北京, 安徽]

代码重点:
String b = a.replace(“[”, “”).replace(“]”, “”).replaceAll(“[\[\]”]", “”).trim();
String ss = s.trim();

如果:没有.replaceAll(“[\[\]”]“, “”)处理,测试输出的a显示也是:[“北京”,“安徽”,“安顺”]。但是,每个元素上面的双引号代表的不是字符串,就是代表符号;加上.replaceAll(”[\[\]“]”, “”),显示效果相同,但是引号仅代表字符串;

split() 函数分割需注意的问题:
1.不为空的字符串分割,需注意分割后数组中的元素前面出现空格,再次使用前要去除空格:.trim();
2.为空的字符串分割,需注意分割后的数组长度为1 的问题,一定要分割前判空:.isEmpty();

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

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

相关文章

Python 程序设计入门(013)—— 字典的操作(2):字典的常用操作总结

Python 程序设计入门&#xff08;013&#xff09;—— 字典的操作&#xff08;2&#xff09;&#xff1a;字典的常用操作总结 目录 Python 程序设计入门&#xff08;013&#xff09;—— 字典的操作&#xff08;2&#xff09;&#xff1a;字典的常用操作总结一、获取字典中元素…

JUC并发编程之CAS

目录 1.什么是CAS 1.1 CAS的定义 1.2 CAS的应用场景 2. CAS的原理 2.1 比较和交换操作 2.2 CAS的实现原理 2.3 CAS的ABA问题及解决方案 3. Java中的CAS 3.1 java.util.concurrent.atomic 包 3.2 AtomicInteger 与 AtomicLong 3.3 ABA问题的解决&#xff1a;AtomicSta…

JavaScript 原型链解析,宏任务和微任务

目录 什么是原型链&#xff1f; 原型与构造函数 原型链的工作原理 实例&#xff1a;理解原型链 宏任务&#xff08;Macro Task&#xff09; 微任务&#xff08;Micro Task&#xff09; 什么是原型链&#xff1f; JavaScript 是一门基于原型的语言&#xff0c;而原型链是…

C# 有效的字母异位词

242 有效的字母异位词 给定两个字符串 和 &#xff0c;编写一个函数来判断 是否是 的字母异位词。stts 注意&#xff1a;若 和 中每个字符出现的次数都相同&#xff0c;则称 和 互为字母异位词。stst 示例 1: 输入: s “anagram”, t “nagaram” 输出: true 示例 2: 输…

11. Redis基础知识

文章目录 一、概述二、数据类型STRINGLISTSETHASHZSET 三、数据结构字典跳跃表 四、使用场景计数器缓存查找表消息队列会话缓存分布式锁实现其它 五、Redis 与 Memcached数据类型数据持久化分布式内存管理机制 六、键的过期时间七、数据淘汰策略八、持久化RDB 持久化AOF 持久化…

Netty:ByteBuf的最大快速可以写入字节数

说明 通过io.netty.buffer.ByteBuf的maxFastWritableBytes()函数可以得到最大快速可写入字节数。最大快速可写入字节数表示没有内部再分配内存的情况下肯定可以写入的最大字节数。maxFastWritableBytes() capacity&#xff08;容量&#xff09; - writerIndexwritableBytes()…

【C++从0到王者】第十八站:手把手教你写一个简单的优先级队列

文章目录 一、优先级队列简介二、优先级队列的接口说明1.基本介绍及其使用2.构造函数3.求数组中第k个最大的元素 三、手撕优先级队列四、仿函数1.仿函数介绍2.优先级队列添加仿函数3.需要自己写仿函数的情形 五、优先级队列完整代码 一、优先级队列简介 优先级队列是一种容器适…

Java经典面试题总结(一)

Java经典面试题总结&#xff08;一&#xff09; 题一&#xff1a;Java编译运行原理题二&#xff1a;JDK&#xff0c;JVM&#xff0c;JRE三者之间的关系题三&#xff1a;谈一下对冯诺依曼体系的了解题四&#xff1a;重载与重写的区别题五&#xff1a;拆箱装箱是指什么&#xff1…

Diffusion-GAN: Training GANs with Diffusion

目录 Abstract 1. Introduction 2. Preliminaries: GANs and diffusion-based generative models 3. Diffusion-GAN: Method and Theoretical Analysis 3.1 Instance noise injection via diffusion 3.2 Adversarial Training 3.3 Adaptive diffffusion 3.4 Theoretica…

微服务技术栈

微服务技术栈是指在开发和构建微服务架构时使用的一组技术和工具。微服务架构是一种软件开发模式&#xff0c;将一个大型应用程序拆分为一组小型、自治的服务&#xff0c;每个服务独立部署、可独立扩展&#xff0c;并通过轻量级的通信机制进行互相协作。 微服务技术栈通常包括…

Netty 入门指南

文章目录 前言Netty介绍Netty发展历程Netty核心组件实现HTTP服务器总结 前言 上文《BIO、NIO、IO多路复用模型详细介绍&Java NIO 网络编程》介绍了几种IO模型以及Java NIO&#xff0c;了解了在网络编程时使用哪种模型可以提高系统性能及效率。即使Java NIO可以帮助开发人员…

44.实现爱尔兰B公式计算并输出表格(matlab程序)

1.简述 1.话务量定义 话务量指在一特定时间内呼叫次数与每次呼叫平均占用时间的乘积。 话务量反映了电话负荷的大小&#xff0c;与呼叫强度和呼叫保持时间有关。呼叫强度是单位时间内发生的呼叫次数&#xff0c;呼叫保持时间也就是占用时间。 话务量计算方法 话务量公式为…

[CKA]考试之集群故障排查 – kubelet故障

由于最新的CKA考试改版&#xff0c;不允许存储书签&#xff0c;本博客致力怎么一步步从官网把答案找到&#xff0c;如何修改把题做对&#xff0c;下面开始我们的 CKA之旅 题目为&#xff1a; Task 一个名为wk8s-node-0的节点状态为NotReady&#xff0c;让其他恢复至正常状态…

c++调用ffmpeg api录屏 并进行udp组播推流

代码及工程见https://download.csdn.net/download/daqinzl/88155241 开发工具&#xff1a;visual studio 2019 播放&#xff0c;采用ffmpeg工具集里的ffplay.exe, 执行命令 ffplay udp://224.1.1.1:5001 主要代码如下: #include "pch.h" #include <iostream>…

RANSAC算法在Python中的实现与应用探索:线性拟合与平面拟合示例

第一部分:RANSAC算法与其应用 在我们的日常生活和多个领域中,如机器学习,计算机视觉,模式识别等,处理数据是一个非常重要的任务。尤其是当我们需要从嘈杂的数据中获取信息或拟合模型时。有时候,数据可能包含异常值或噪声,这可能会对我们的结果产生重大影响。为了解决这…

【搜索】DFS剪枝与优化

算法提高课笔记 目录 小猫爬山题意思路代码 数独题意思路代码 木棒题意思路代码 生日蛋糕题意思路代码 剪枝是什么意思呢&#xff1f; 我们知道&#xff0c;不管是内部搜索还是外部搜索&#xff0c;都可以形成一棵搜索树&#xff0c;如果将搜索树全部遍历一遍&#xff0c;效率…

【深度学习_TensorFlow】误差函数

写在前面 搭建完网络层后&#xff0c;在每层网络中都要进行前向计算&#xff0c;下一步就是选择合适的误差函数来计算误差。其中均方差函数和交叉熵函数在深度学习中比较常见&#xff0c;均方差函数主要用于回归问题&#xff0c;交叉熵函数主要用于分类问题。 写在中间 均方差…

低功耗LoRaWAN国产低功耗LoRa+RF射频前端芯片XD6500S

目录 典型应用XD6500S简介芯片特性 LoRa系列选型参考 LoRa是为低数据速率、远距离距离和超低功耗而优化的扩频协议&#xff0c;用于LPWAN应用程序的通信。 典型应用 一、智慧农业   智慧农业大田解决方案利用传感设备、自动化控制设备、气象站实时监测采集田间土壤墒情、气象…

【Java面试】Nacos自动注册原理实现以及服务注册更新并如何保存到注册表

文章目录 Nacos自动注册原理实现服务注册更新并如何保存到注册表 Nacos自动注册原理实现 完整流程 我们知道SpringBoot提供了挂载点的方式来帮助我们的类完成自动注入。 Nacos再META-INF的spring.factories这个文件中添加了自己需要自动注入的Bean对象。 叫做NacosServiceRegi…

HTTP协议——应用层

HTTP协议 只要保证, 一端发送时构造的数据, 在另一端能够正确的进行解析, 就是ok的. 这种约定, 就是 应用层协议 HTTP简介 HTTP&#xff08;Hyper Text Transfer Protocol&#xff09;协议又叫做超文本传输协议&#xff0c;是一个简单的请求-响应协议&#xff0c;HTTP通常运行…