iis服务器助手广告广告
返回顶部
首页 > 资讯 > 精选 >Java中字符串常见的拼接方式有哪些
  • 701
分享到

Java中字符串常见的拼接方式有哪些

2023-07-05 21:07:46 701人浏览 独家记忆
摘要

这篇“Java中字符串常见的拼接方式有哪些”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“Java中字符串常见的拼接方式有哪些

这篇“Java中字符串常见的拼接方式有哪些”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“Java中字符串常见的拼接方式有哪些”文章吧。

方式一:+ 最常见的方式

        String aa = "今天";        String bb = "明天";        System.out.println(aa+bb);

方式二:StringBuilder.append()和StringBuffer.append()

先有StringBuffer后有StringBuilder,两者就像是孪生双胞胎,该有的都有,只不过大哥StringBuffer,大部分方法都经过synchronized修饰,所以StringBuffer是线程安全的,但是它效率就相对StringBuilder较低

        String aa = "今天";        String bb = "明天";        StringBuilder sber = new StringBuilder();        StringBuffer sbf = new StringBuffer();        sber.append(aa).append(bb);        System.out.println(sber.toString());        sbf.append(aa).append(bb);        System.out.println(sbf.toString());

方式三:String类下的cocat()方法

如果拼接的字符串是null,concat会抛出NullPointerException。如果拼接的字符串是一个空字符串(“”),那么concat的效率要更高。如果拼接的字符串非常多,concat的效率就会下降,因为创建的字符串对象越多,开销越大。

        String aa = "今天";        String bb = "明天";        String concat = aa.concat(bb);        System.out.println(concat);

方式四:String类下的join()方法

jdk1.8提供了一种新的字符串拼接姿势:String类增加了一个静态方法join,第一个参数为字符串连接符

String aa = "今天";        String bb = "明天";        String join = String.join("-", aa, bb);        System.out.println(join);

方式五:StringJoiner

StringJoiner是JDK1.8,java.util包中的一个类,用于构造一个由分隔符重新连接的字符序列

String aa = "今天";        String bb = "明天";        StringJoiner sj = new StringJoiner(":", "[", "]");        sj.add(aa).add(bb);        System.out.println(sj.toString());

StringJoiner源码

package java.util;public final class StringJoiner {    private final String prefix;//前缀    private final String delimiter;//间隔符    private final String suffix;//后缀    private StringBuilder value;//值    private String emptyValue;//空值    public StringJoiner(CharSequence delimiter) {        this(delimiter, "", "");//默认前缀和后缀为"",重载调用    }    public StringJoiner(CharSequence delimiter,                        CharSequence prefix,                        CharSequence suffix) {        //间隔符,前缀和后缀判断是否为null,null将抛出异常        Objects.requireNonNull(prefix, "The prefix must not be null");        Objects.requireNonNull(delimiter, "The delimiter must not be null");        Objects.requireNonNull(suffix, "The suffix must not be null");         // 成员变量赋值        this.prefix = prefix.toString();        this.delimiter = delimiter.toString();        this.suffix = suffix.toString();        this.emptyValue = this.prefix + this.suffix;//空值被设置为只有前后缀    }//设置空值,检查是否为null    public StringJoiner setEmptyValue(CharSequence emptyValue) {        this.emptyValue = Objects.requireNonNull(emptyValue,            "The empty value must not be null").toString();        return this;    }    @Override    public String toString() {        if (value == null) {            return emptyValue;//没有值将返回空值或者后续设置的空值        } else {            if (suffix.equals("")) {                return value.toString();//后缀为""直接返回字符串,不用添加            } else {            //后缀不为"",添加后缀,然后直接返回字符串,修改长度                int initialLength = value.length();                String result = value.append(suffix).toString();                // reset value to pre-append initialLength                value.setLength(initialLength);                return result;            }        }    }    初始化,先添加前缀,有了之后每次先添加间隔符,StringBuilder后续append字符串    public StringJoiner add(CharSequence newElement) {        prepareBuilder().append(newElement);        return this;    }//合并StringJoiner,注意后面StringJoiner 的前缀就不要了,后面的appen进来    public StringJoiner merge(StringJoiner other) {        Objects.requireNonNull(other);        if (other.value != null) {            final int length = other.value.length();            // lock the length so that we can seize the data to be appended            // before initiate copying to avoid interference, especially when            // merge 'this'            StringBuilder builder = prepareBuilder();            builder.append(other.value, other.prefix.length(), length);        }        return this;    }//初始化,先添加前缀,有了之后每次先添加间隔符    private StringBuilder prepareBuilder() {        if (value != null) {            value.append(delimiter);        } else {            value = new StringBuilder().append(prefix);        }        return value;    }    public int length() {        // Remember that we never actually append the suffix unless we return        // the full (present) value or some sub-string or length of it, so that        // we can add on more if we need to.        //不忘添加后缀的长度        return (value != null ? value.length() + suffix.length() :                emptyValue.length());    }}

方式六:StringUtils.join()

实战项目中,我们处理字符串的时候,经常会用到这个类.org.apache.commons.lang3.StringUtils包下,该方法更善于拼接数组中的字符串,并且不用担心 NullPointerException。

String aa = "今天";        String bb = "明天";        String ids[] = {"1","2","3"};        System.out.println(StringUtils.join(aa,bb,"-","124"));        String join1 = StringUtils.join(ids,",");        System.out.println(join1);

以上就是关于“Java中字符串常见的拼接方式有哪些”这篇文章的内容,相信大家都有了一定的了解,希望小编分享的内容对大家有帮助,若想了解更多相关的知识内容,请关注编程网精选频道。

--结束END--

本文标题: Java中字符串常见的拼接方式有哪些

本文链接: https://www.lsjlt.com/news/355423.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Java中字符串常见的拼接方式有哪些
    这篇“Java中字符串常见的拼接方式有哪些”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“Java中字符串常见的拼接方式有哪些...
    99+
    2023-07-05
  • Java中字符串常见的一些拼接方式总结
    目录方式一:+ 最常见的方式方式二:StringBuilder.append()和StringBuffer.append()方式三:String类下的cocat()方法方式四:Str...
    99+
    2023-05-14
    java字符串拼接的几种方式 JAVA字符串拼接 java字符串拼接的方法
  • Java代码中字符串拼接方式有哪些
    这篇文章主要为大家展示了“Java代码中字符串拼接方式有哪些”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“Java代码中字符串拼接方式有哪些”这篇文章吧。分析过程环境系统: windows 10...
    99+
    2023-06-29
  • java中拼接字符串有哪些方法
    这篇文章给大家分享的是有关java中拼接字符串有哪些方法的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。示例代码public class Test {  List&...
    99+
    2023-05-30
  • Java字符串拼接的方法有哪些
    这篇文章主要为大家展示了“Java字符串拼接的方法有哪些”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“Java字符串拼接的方法有哪些”这篇文章吧。> 字符串拼接一般使用“+”,但是“+”不...
    99+
    2023-06-22
  • Java中拼接字符串String的方法有哪些
    这篇文章主要介绍“Java中拼接字符串String的方法有哪些”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“Java中拼接字符串String的方法有哪些”文章能帮助大家解决问题。1. 前言Java ...
    99+
    2023-06-29
  • go语言中字符串的拼接方式有哪些
    本篇内容主要讲解“go语言中字符串的拼接方式有哪些”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“go语言中字符串的拼接方式有哪些”吧!+拼接方式这种方式是我在写golang经常用的方式,go语言...
    99+
    2023-06-22
  • Java中常见字符串拼接九种方式,总有一款你喜欢!
    一、前言 在 Java 编程中,字符串拼接是一项非常基础的操作,它涉及到了很多日常开发工作中常见的场景,例如拼接 SQL 语句、构建 HTTP 请求参数等等。因此,对于掌握好字符串拼接技巧不仅有助于提高代码效率,而且能够避免一些潜在的性能问...
    99+
    2023-08-30
    java jvm
  • Python中的字符串拼接方法有哪些?
    Python中的字符串拼接方法有很多,本文将介绍几种常用的方法,并提供相应的代码示例。这些方法包括使用"+"符号、使用join()方法、使用format()方法以及使用f-string。使用"+"符号拼接字符串:这是一种最简单直接的方法,只...
    99+
    2023-10-22
    字符串拼接方法: 使用指定的分隔符。
  • es6中拼接字符串的方法有哪些
    这篇“es6中拼接字符串的方法有哪些”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“es6中...
    99+
    2022-10-19
  • python中有哪些拼接字符串的方法
    python中拼接字符串的方法有:1.直接连接;2.使用加号连接;3.使用逗号连接;4.使用%连接;5.使用format连接;6.使用f-string方式连接;7.使用join方法连接;python中拼接字符串的方法有以下几种直接连接字符串...
    99+
    2022-10-14
  • python中字符串的拼接方法有哪些
    在Python中,字符串的拼接可以使用以下几种方法:1. 使用"+"运算符进行拼接:```pythonstr1 = "Hello"s...
    99+
    2023-08-18
    python
  • python字符串拼接的方法有哪些
    这篇文章主要介绍python字符串拼接的方法有哪些,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!python有哪些常用库python常用的库:1.requesuts;2.scrapy;3.pillow;4.twist...
    99+
    2023-06-14
  • 常见的字符串常量表示方式有哪些?
    字符串常量是程序中使用的固定文本值。在大多数编程语言中都有不同的方法来表示字符串常量。下面将介绍一些常见的字符串常量表示方法,并给出具体的代码示例。单引号表示法:在一些编程语言中,可以使用单引号括起来的字符来表示字符串常量。这种表示方法通常...
    99+
    2023-12-27
    字符串常量 表示方法
  • C++中常见的字符串拼接问题解决方案
    C++中常见的字符串拼接问题解决方案在C++编程中,字符串拼接是一种常见的操作,特别是在处理文本和输出结果时。本文将介绍一些常见的字符串拼接问题,并提供相应的解决方案,同时附上代码示例以帮助读者理解。使用"+"运算符进行字符串拼接在C++中...
    99+
    2023-10-22
    字符串 解决 拼接 字符串拼接方案:
  • Java中字符串占位替换、字符串拼接、字符串与Collection互转的方式
    场景 字符串占位替换 String.format 最原始最基础的方式。 使用%来表示占位,后面跟上不同的标识符,用于限定这个占位符的参数类型,由jdk原生提供支持。 示例:         String badao = String.for...
    99+
    2023-09-03
    java servlet 开发语言
  • C++中常见的字符串拼接问题详解
    C++中常见的字符串拼接问题详解,需要具体代码示例在C++编程中,字符串拼接是一项常见的任务。无论是简单的拼接几个字符串还是复杂的字符串操作,都需要掌握一些基本的技巧和方法。本文将详细介绍C++中常见的字符串拼接问题,并提供具体的代码示例。...
    99+
    2023-10-22
    字符串拼接 C++ 中的字符串操作 字符串拼接问题详解
  • C++中常见的字符串拼接问题的解决方案
    C++中常见的字符串拼接问题的解决方案在C++编程中,字符串拼接是一个常见的操作,通常用于拼接两个或多个字符串,或者将其他数据类型转换为字符串后进行拼接。在处理字符串拼接的过程中,我们需要考虑到性能和代码的简洁性。本文将介绍几种常见的字符串...
    99+
    2023-10-22
    C++ 问题解决方案 关键词:字符串拼接
  • Python中的字符串切割和拼接方法有哪些?
    Python中的字符串切割和拼接方法有很多种,下面将介绍其中常用的方法,并附上代码示例。使用split()方法进行字符串切割split()方法可以根据指定的分隔符将字符串切割成多个部分,返回一个包含切割后部分的列表。str1 = "...
    99+
    2023-10-25
    字符串 拼接 切割
  • JavaScript中有哪些字符串连接方式
    今天就跟大家聊聊有关JavaScript中有哪些字符串连接方式,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。JavaScript是什么JS是JavaScript的简称,它是一种直译式...
    99+
    2023-06-14
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作