数组转字符串的方法java
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
数组转字符串的方法java
1. In troduction
在J av a中,当我们需要将数组转换为字符串时,有几种常用的方法可以实现。本文将介绍这些方法,并提供相应的示例代码。
2.使用`String.join()`方法
`S tr in g.jo in()`方法是自JD K8引入的一个方便的方法,可以将数组中的元素用指定的分隔符连接起来形成一个字符串。
```j av a
//定义一个整型数组
i n t[]n um s={1,2,3,4,5};
//使用St ri ng.j oin()方法将数组转换为字符串,以逗号作为分隔符
S t ri ng st r=St ri ng.j oi n(",",Ar ra ys.s tr ea m(nu ms).map T oO bj( S t ri ng::va lu eO f).t oA rr ay(S tr in g[]::n ew));
S y st em.o ut.p ri ntl n(s tr);
```
输出结果:
```p la in te xt
1,2,3,4,5
```
3.使用`String Builde r`类
`S tr in gB ui ld er`类提供了一个灵活的方式来构建字符串。我们可以使用其`ap pe nd()`方法来追加数组中的元素,然后使用`toS t ri n g()`方法将其转换为字符串。
```j av a
//定义一个字符串数组
S t ri ng[]fr ui ts={"a pp le","b an an a","or an ge","g ra pe"};
//使用St ri ng Bu ild e r来转换数组为字符串
S t ri ng Bu il de rs b=n e wS tr in gB ui ld er();
f o r(St ri n
g fr ui t:f r ui ts){
s b.a pp en d(fr ui t).a pp en d(",");
}
s b.d el et eC ha rA t(s b.l en gt h()-1);//删除最后一个逗号
S t ri ng st r=sb.t oSt r in g();
S y st em.o ut.p ri ntl n(s tr);
```
输出结果:
```p la in te xt
a p pl e,ba na na,o ran g e,gr ap e
```
4.使用`String Buffer`类
与`St ri ng Bu il de r`类类似,`St ri ng Bu f fe r`类也提供了类似的功能来构建字符串。这两个类的主要区别在于`St ri ng Bu ff er`类是线程安全的,而`S tr in gB ui l de r`类则不是。
```j av a
//定义一个字符型数组
c h ar[]ch ar s={'H','e','l','l','o'};
//使用St ri ng Bu ffe r来将字符数组转换为字符串
S t ri ng Bu ff er sb=ne w St ri ng Bu ff er();
f o r(ch ar c:ch ar s){
s b.a pp en d(c);
}
S t ri ng st r=sb.t oSt r in g();
S y st em.o ut.p ri ntl n(s tr);
```
输出结果:
```p la in te xt
H e ll o
```
5.使用`Arrays.toStr ing()`方法和正则表达式
`A rr ay s.to St ri ng()`方法可以方便地将数组转换为字符串,但它默
认添加了方括号和逗号。我们可以结合正则表达式来去除这些无用的字符。
```j av a
//定义一个双精度浮点型数组
d o ub le[]nu mb er s={1.0,2.0,3.0,4.0,5.0};
//使用Ar ra ys.t oSt r in g()方法将数组转换为字符串,并去除方括
号和逗号
S t ri ng st r=Ar ra ys.t oS tr in g(nu mb ers).r ep la ce Al l("[\\[\\], ]","");
S y st em.o ut.p ri ntl n(s tr);
```
输出结果:
```p la in te xt
1.02.03.04.05.0
```
6.使用`String Tokeni zer`类
`S tr in gT ok en iz er`类可以用于将字符串按照指定的分隔符拆分成多个子字符串。我们可以先将数组元素拼接成一个字符串,然后使用
`S tr in gT ok en iz er`类来分割字符串。
```j av a
//定义一个布尔型数组
b o ol ea n[]f la gs={t r ue,f al se,t ru e,f a ls e,tr ue};
//将布尔型数组拼接为一个字符串
S t ri ng Bu il de rs b=n e wS tr in gB ui ld er();
f o r(bo ol ea nf la g:f l a
g s){
s b.a pp en d(fl ag).a p pe nd(",");
}
S t ri ng st r=sb.t oSt r in g();
s t r=st r.su bs tr ing(0,st r.le ng th()-1);//删除最后一个逗号
//使用St ri ng To ken i ze r类来将字符串按照逗号分隔成多个子字符串
S t ri ng To ke ni ze rst=ne wS tr in gT ok eni z er(s tr,",");
S t ri ng Bu il de rr esu l t=ne wS tr in gB uil d er();
w h il e(st.h as Mo reT o ke ns()){
S t ri ng to ke n=st.ne x tT ok en();
r e su lt.a pp en d(tok e n).a pp en d("");