1,字符数组 转换为 字符串

java可以使用两种方法直接将字符数组转为字符串。

方法1:直接在构造String时转换。
char[] data = {'a', 'b', 'c'};
String str = new String(data);

方法2:调用String类的方法转换。
//String.valueOf(char[] ch);

String str = String.valueOf(data);

2,字符串数组转换为字符串

如果是 “字符串数组” 转 “字符串”,只能通过循环,没有其它方法

String[] str = {"abc", "bcd", "def"};

StringBuffer sb = new StringBuffer();

for(int i = 0; i < str.length; i++){

sb. append(str[i]);

}

String s = sb.toString();

//William感悟:当然可以通过 String的字符串拼接,但是这样会不断创建String对象,然后销毁对象,这样有点浪费内存,还不如StringBuffer

3,字符串 转换为 字符数组

这个要看你的具体需求了.如果是有分隔符的那种例如"a,b,c";就直接分割就行了.
String string = "a,b,c";
String [] stringArr= string.split(","); //注意分隔符是需要转译滴...
如果是"abc"这种字符串,就直接
String string = "abc" ;
char [] stringArr = string.toCharArray(); //注意返回值是char数组
如果要返回byte数组就直接使用getBytes方法就ok了~~
String string = "abc" ;
byte [] stringArr = string.getBytes();

4,字符串 转换为 字符串数组

  1. package demo01;
  2. /**
  3. *
  4. * @ClassName: ArrayAndString
  5. * @Description:
  6. * @author William_Dai
  7. * @date 2018年8月15日
  8. *
  9. */
  10. public class ArrayAndString {
  11. public static void main(String[] args) {
  12. /**1,数组转换为字符串*/
  13. //方法1:直接在构造String时转换。
  14. char[] data = {'a', 'b', 'c'};
  15. String str = new String(data);
  16. System.out.println(str);
  17.  
  18. //方法2:调用String类的方法转换。
  19. String str2 = String.valueOf(data);
  20. System.out.println(str2);
  21.  
  22. /**2,字符串数组转换为字符串*/
  23. //如果是 “字符串数组” 转 “字符串”,只能通过循环,没有其它方法
  24. String[] str3 = {"abc", "bcd", "def"};
  25. StringBuffer sb = new StringBuffer();
  26. for(int i = 0; i < str3.length; i++){
  27. sb. append(str3[i]);
  28. }
  29. String str4 = sb.toString();
  30. System.out.println(str4);
  31.  
  32. //William感悟:当然可以通过 String的字符串拼接,但是这样会不断创建String对象,然后销毁对象,这样有点浪费内存,还不如StringBuffer
  33.  
  34. /**3,字符串转换为数组*/
  35.  
  36. //这个要看你的具体需求了.如果是有分隔符的那种例如"a,b,c";就直接分割就行了.
  37. String str5 = "a,b,c";
  38. String [] strArr= str5.split(",");
  39. for(int i = 0 ; i < strArr.length; i ++){
  40. System.out.print(strArr[i]+" ");
  41. }
  42. //如果是"abc"这种字符串,就直接
  43. String str6 = "abc" ;
  44. char [] stringArr = str6.toCharArray(); //注意返回值是char数组
  45. for(int i = 0 ; i < stringArr.length; i ++){
  46. System.out.print(stringArr[i]+" ");
  47. }
  48. //如果要返回byte数组就直接使用getBytes方法就ok了~~
  49. String str7 = "abc" ;
  50. byte [] intArr = str7.getBytes();
  51. for(int i = 0 ; i < intArr.length; i ++){
  52. System.out.print(intArr[i]+" ");
  53. }
  54.  
  55. /**4,字符串转换为字符串数组*/
  56. String str8 = "Are you OK ?";
  57. String [] strArr2= str8.split(" ");
  58. for(int i = 0 ; i < strArr2.length; i ++){
  59. System.out.println(strArr2[i]);
  60. }
  61. }
  62.  
  63. }

(PASS)字符数组\字符串数组 和 字符串 的相互转换的更多相关文章

  1. Lua 用指定字符或字符串分割输入字符串,返回包含分割结果的数组

    // 用指定字符或字符串分割输入字符串,返回包含分割结果的数组 // @function [parent=#string] split // @param string input 输入字符串 // ...

  2. C语言 字符二维数组(多个字符串)探讨 求解

    什么是二维字符数组? 二维字符数组中为什么定义字符串是一行一个? “hello world”在C语言中代表什么? 为什么只能在定义时才能写成char   a[10]="jvssj" ...

  3. 查找常用字符(给定仅有小写字母组成的字符串数组 A,返回列表中的每个字符串中都显示的全部字符(包括重复字符)组成的列表。例如,如果一个字符在每个字符串中出现 3 次,但不是 4 次,则需要在最终答案中包含该字符 3 次。)

    给定仅有小写字母组成的字符串数组 A,返回列表中的每个字符串中都显示的全部字符(包括重复字符)组成的列表. 例如,如果一个字符在每个字符串中出现 3 次,但不是 4 次,则需要在最终答案中包含该字符 ...

  4. C#字符串、字节数组和内存流间的相互转换

    定义string变量为str,内存流变量为ms,比特数组为bt 1.字符串=>比特数组 (1)byte[] bt=System.Text.Encoding.Default.GetBytes(&q ...

  5. php把字符串指定字符分割成数组

    <?php $str="1|2|3|4|5|"; $var=explode("|",$str); print_r($var); ?> $var=ex ...

  6. C#字符串、字节数组和内存流间的相互转换 - IT浪潮之巅

    定义string变量为str,内存流变量为ms,比特数组为bt 1.字符串=>比特数组 (1)byte[] bt=System.Text.Encoding.Default.GetBytes(&q ...

  7. 逗号字符的使用、字符数组与字符串数组、sizeof与strlen

    (1)连接两个表达式为一个表达式 for(ux=0,uxt=1;uxt<444;ux++,uxt++) 允许通过编译:他可以给FOR循环更多的初始化值: (2)一般定义的话要区别只有 字符数组 ...

  8. LeetCode随缘刷题之Java经典面试题将一个字符串数组进行分组输出,每组中的字符串都由相同的字符组成

    今天给大家分享一个Java经典的面试题,题目是这样的: 本题是LeetCode题库中的49题. 将一个字符串数组进行分组输出,每组中的字符串都由相同的字符组成 举个例子:输入["eat&qu ...

  9. 字符串&数组的相互转换

    字符串 -> 数组 方法一: $str = "abcd" $s2 = $str.GetEnumerator()  #$s2是无法使用下标的方式进行索引的,因为其不是array ...

随机推荐

  1. idea部署tomcat项目时,在项目里打断点不能拦截

    以下内容都是基于我自己的项目(如未解决道友们的问题,请别介意) idea部署tomcat项目时,在项目里打断点不能拦截,工作中遇到的问题,记录一下(tomcat6) 当项目的以下内容配置完毕后,启动项 ...

  2. css 深入理解

    场景一.边框半透明,背景绿色 默认情况下背景会延伸到边框所在的下边 css2 中我们只能接受  css3 中我们可以通过 background-clip 属性来实现 border: 10px soli ...

  3. css 实现水波纹,波浪动画效果

    <div class="wave"> 水波纹效果 <div class="wave1"></div> <div cla ...

  4. Comet OJ - contest #3 C DP

    题意:给你一个长度为n序列,和一个数m,问这个序列有多少个子序列,满足这个子序列的所有子序列的和是m的倍数?答案对1e9 + 7取模,n, m范围到5e3; 思路:容易发现,如果一个子序列的长度是n, ...

  5. 前端学习(十七)js数组(笔记)

    数组:        1.    var arr=[1,2,3,4]; 2.    var arr=new Array(1,2,3,4,5); 区别:        1.写法不一样,选择第一种(好写) ...

  6. 解决ubuntu终端路劲显示过长问题

    1 找到配置文件先进行备份:  cp  ~/.bashrc  ~/.bashrc-bak 2 找到配置文件修改: vi  ~/.bashrc 备份是为了防止配置修改出错,可以还原 3 在以下的红色位置 ...

  7. Java 基础 -- BigInteger BigDecimai大数

    BigInteger 加减乘除 BigInteger bi1 = new BigInteger("123456789") ; // 声明BigInteger对象 BigIntege ...

  8. 【LeetCode 2】两数相加

    描述 [题解] 模拟高精度的加法. 用x来记录前面的进位就好. [代码] /** * Definition for singly-linked list. * struct ListNode { * ...

  9. JVM典型配置和调优举例

    1. 堆设置-Xms: :初始堆大小.-Xmx: :最大堆大小.-XX:NewSize=n: :设置年轻代大小.-XX:NewRatio=n: : :设置年轻代和年老代的比值.如:为 3,表示年轻代与 ...

  10. jmeter登录之-动态参数

    jmeter登录之-动态参数 1.抓包查看提交的登录参数 发现参数authenticity_token是动态的,每次都不一样,所以回放的时候就会失败 2.提取动态变化的参数-后置处理器(相当于LR的关 ...