Java List集合返回值去掉中括号('[ ]')的操作

 更新时间:2020年08月28日 15:13:58   作者:Zartillery  
这篇文章主要介绍了Java List集合返回值去掉中括号('[ ]')的操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧

如下所示:

调用StringUtils工具类的strip()方法去掉中括号"[ ]":

StringUtils.strip(word.toString(),"[]") //第一个参数放集合,第二个参数去掉中括号"[]"

StringUtils工具类代码:

package com.ktamr.common.utils; 
import com.ktamr.common.core.text.StrFormatter; 
import java.util.Collection;
import java.util.Map;
 
/**
 * 字符串工具类
 * 
 * @author ktamr
 */
public class StringUtils extends org.apache.commons.lang3.StringUtils
{
 /** 空字符串 */
 private static final String NULLSTR = "";
 
 /** 下划线 */
 private static final char SEPARATOR = '_';
 
 /**
 * 获取参数不为空值
 * 
 * @param value defaultValue 要判断的value
 * @return value 返回值
 */
 public static <T> T nvl(T value, T defaultValue)
 {
 return value != null ? value : defaultValue;
 }
 
 /**
 * * 判断一个Collection是否为空, 包含List,Set,Queue
 * 
 * @param coll 要判断的Collection
 * @return true:为空 false:非空
 */
 public static boolean isEmpty(Collection<?> coll)
 {
 return isNull(coll) || coll.isEmpty();
 }
 
 /**
 * * 判断一个Collection是否非空,包含List,Set,Queue
 * 
 * @param coll 要判断的Collection
 * @return true:非空 false:空
 */
 public static boolean isNotEmpty(Collection<?> coll)
 {
 return !isEmpty(coll);
 }
 
 /**
 * * 判断一个对象数组是否为空
 * 
 * @param objects 要判断的对象数组
 ** @return true:为空 false:非空
 */
 public static boolean isEmpty(Object[] objects)
 {
 return isNull(objects) || (objects.length == 0);
 }
 
 /**
 * * 判断一个对象数组是否非空
 * 
 * @param objects 要判断的对象数组
 * @return true:非空 false:空
 */
 public static boolean isNotEmpty(Object[] objects)
 {
 return !isEmpty(objects);
 }
 
 /**
 * * 判断一个Map是否为空
 * 
 * @param map 要判断的Map
 * @return true:为空 false:非空
 */
 public static boolean isEmpty(Map<?, ?> map)
 {
 return isNull(map) || map.isEmpty();
 }
 
 /**
 * * 判断一个Map是否为空
 * 
 * @param map 要判断的Map
 * @return true:非空 false:空
 */
 public static boolean isNotEmpty(Map<?, ?> map)
 {
 return !isEmpty(map);
 }
 
 /**
 * * 判断一个字符串是否为空串
 * 
 * @param str String
 * @return true:为空 false:非空
 */
 public static boolean isEmpty(String str)
 {
 return isNull(str) || NULLSTR.equals(str.trim());
 }
 
 /**
 * * 判断一个字符串是否为非空串
 * 
 * @param str String
 * @return true:非空串 false:空串
 */
 public static boolean isNotEmpty(String str)
 {
 return !isEmpty(str);
 }
 
 /**
 * * 判断一个对象是否为空
 * 
 * @param object Object
 * @return true:为空 false:非空
 */
 public static boolean isNull(Object object)
 {
 return object == null;
 }
 
 /**
 * * 判断一个对象是否非空
 * 
 * @param object Object
 * @return true:非空 false:空
 */
 public static boolean isNotNull(Object object)
 {
 return !isNull(object);
 }
 
 /**
 * * 判断一个对象是否是数组类型(Java基本型别的数组)
 * 
 * @param object 对象
 * @return true:是数组 false:不是数组
 */
 public static boolean isArray(Object object)
 {
 return isNotNull(object) && object.getClass().isArray();
 }
 
 /**
 * 去空格
 */
 public static String trim(String str)
 {
 return (str == null ? "" : str.trim());
 }
 
 /**
 * 截取字符串
 * 
 * @param str 字符串
 * @param start 开始
 * @return 结果
 */
 public static String substring(final String str, int start)
 {
 if (str == null)
 {
  return NULLSTR;
 }
 
 if (start < 0)
 {
  start = str.length() + start;
 }
 
 if (start < 0)
 {
  start = 0;
 }
 if (start > str.length())
 {
  return NULLSTR;
 }
 
 return str.substring(start);
 }
 
 /**
 * 截取字符串
 * 
 * @param str 字符串
 * @param start 开始
 * @param end 结束
 * @return 结果
 */
 public static String substring(final String str, int start, int end)
 {
 if (str == null)
 {
  return NULLSTR;
 }
 
 if (end < 0)
 {
  end = str.length() + end;
 }
 if (start < 0)
 {
  start = str.length() + start;
 }
 
 if (end > str.length())
 {
  end = str.length();
 }
 
 if (start > end)
 {
  return NULLSTR;
 }
 
 if (start < 0)
 {
  start = 0;
 }
 if (end < 0)
 {
  end = 0;
 }
 
 return str.substring(start, end);
 }
 
 /**
 * 格式化文本, {} 表示占位符<br>
 * 此方法只是简单将占位符 {} 按照顺序替换为参数<br>
 * 如果想输出 {} 使用 \\转义 { 即可,如果想输出 {} 之前的 \ 使用双转义符 \\\\ 即可<br>
 * 例:<br>
 * 通常使用:format("this is {} for {}", "a", "b") - this is a for b<br>
 * 转义{}: format("this is \\{} for {}", "a", "b") - this is \{} for a<br>
 * 转义\: format("this is \\\\{} for {}", "a", "b") - this is \a for b<br>
 * 
 * @param template 文本模板,被替换的部分用 {} 表示
 * @param params 参数值
 * @return 格式化后的文本
 */
 public static String format(String template, Object... params)
 {
 if (isEmpty(params) || isEmpty(template))
 {
  return template;
 }
 return StrFormatter.format(template, params);
 } 
 
 /**
 * 是否包含字符串
 * 
 * @param str 验证字符串
 * @param strs 字符串组
 * @return 包含返回true
 */
 public static boolean inStringIgnoreCase(String str, String... strs)
 {
 if (str != null && strs != null)
 {
  for (String s : strs)
  {
  if (str.equalsIgnoreCase(trim(s)))
  {
   return true;
  }
  }
 }
 return false;
 }
 
 /**
 * 将下划线大写方式命名的字符串转换为驼峰式。如果转换前的下划线大写方式命名的字符串为空,则返回空字符串。 例如:HELLO_WORLD- HelloWorld
 * 
 * @param name 转换前的下划线大写方式命名的字符串
 * @return 转换后的驼峰式命名的字符串
 */
 public static String convertToCamelCase(String name)
 {
 StringBuilder result = new StringBuilder();
 // 快速检查
 if (name == null || name.isEmpty())
 {
  // 没必要转换
  return "";
 }
 else if (!name.contains("_"))
 {
  // 不含下划线,仅将首字母大写
  return name.substring(0, 1).toUpperCase() + name.substring(1);
 }
 // 用下划线将原始字符串分割
 String[] camels = name.split("_");
 for (String camel : camels)
 {
  // 跳过原始字符串中开头、结尾的下换线或双重下划线
  if (camel.isEmpty())
  {
  continue;
  }
  // 首字母大写
  result.append(camel.substring(0, 1).toUpperCase());
  result.append(camel.substring(1).toLowerCase());
 }
 return result.toString();
 }
}

补充知识:java List转String去掉[ 、]、空格

我就废话不多说了,大家还是直接看代码吧~

 public static void main(String[] args) {
 String s = "[aasa, bbbbb]";
 String s1 = s.replaceAll("(?:\\[|null|\\]| +)", "");
 
 System.out.println(s1);
 }

在list<String> toString后,会发现两边有[],且中间还有有空格产生。

解决办法如上代码所示,使用replaceAll正则匹配 [、]、空格。

以上这篇Java List集合返回值去掉中括号('[ ]')的操作就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • spring mvc4中相关注解的详细讲解教程

    spring mvc4中相关注解的详细讲解教程

    这篇文章主要给大家介绍了关于spring mvc4中相关注解的相关资料,其中详细介绍了关于@Controller、@RequestMapping、@RathVariable、@RequestParam及@RequestBody等等注解的相关内容,需要的朋友可以参考借鉴,下面来一起看看吧。
    2017-06-06
  • 如何使用pipeline和jacoco获取自动化测试代码覆盖率

    如何使用pipeline和jacoco获取自动化测试代码覆盖率

    这篇文章主要介绍了如何使用pipeline和jacoco获取自动化测试代码覆盖率,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-11-11
  • Java中使用byte[]获取16位字符串的技巧分享

    Java中使用byte[]获取16位字符串的技巧分享

    在Java编程中,处理字符编码和字节数组时,尤其是从​​byte[]​​​数组中获取字符串,可能会遇到字符集的复杂性问题,本文将介绍如何从一个​​byte[]​​数组中正确获取16位字符串,需要的朋友可以参考下
    2024-08-08
  • mybatis返回的map结果如何设置有序

    mybatis返回的map结果如何设置有序

    这篇文章主要介绍了mybatis返回的map结果如何设置有序,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-01-01
  • Java 8 Time Api 使用方法技巧

    Java 8 Time Api 使用方法技巧

    这篇文章主要介绍了Java 8 Time Api 使用方法技巧,Java 8为Date和Time引入了新的API,以解决旧java.util.Date和java.util.Calendar的缺点,更多相关内容需要的小伙伴可以参考一下
    2022-05-05
  • 如何使用jakarta.json进行json序列化和反序列化

    如何使用jakarta.json进行json序列化和反序列化

    java里,json框架何其多,常见的有jackson、fastjson、gson等,本文重点介绍如何使用jakarta.json进行json序列化和反序列化,需要的朋友可以参考下,
    2024-07-07
  • java web服务器实现跨域访问

    java web服务器实现跨域访问

    这篇文章主要为大家详细介绍了java web服务器实现跨域访问,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-08-08
  • Spring boot实现文件上传实例(多文件上传)

    Spring boot实现文件上传实例(多文件上传)

    本篇文章主要介绍了Spring boot实现文件上传实例(多文件上传),具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-05-05
  • 解决Spring Data Jpa 实体类自动创建数据库表失败问题

    解决Spring Data Jpa 实体类自动创建数据库表失败问题

    这篇文章主要介绍了解决Spring Data Jpa 实体类自动创建数据库表失败问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-09-09
  • Java基于代理模式解决红酒经销问题详解

    Java基于代理模式解决红酒经销问题详解

    这篇文章主要介绍了Java基于代理模式解决红酒经销问题,详细描述了代理模式的概念、原理并结合实例形式分析了java基于代理模式解决红酒经销问题的相关步骤、实现方法与操作注意事项,需要的朋友可以参考下
    2018-04-04

最新评论