如何转换一个String数组为char在Java数组 [英] How to convert a String array to char array in Java

查看:112
本文介绍了如何转换一个String数组为char在Java数组的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我们给出一个字符串数组,我们需要的是在所有的字符串一个char [],即,所有的字符数组
例如:

输入:[我爱你]

输出:[I,L,O,V,E,Y,O型,U]

首先我做一个数组的数组。

然后,我已经找到了需要的字符长度[]数组。

我已经试过以下至今:

 的char [] [] A1 =新的char [str.length] [];的for(int i = 0; I< str.length;我++){
    A1 [I] = STR [I] .toCharArray();
}INT总= 0;
的for(int i = 0; I< str.length;我++){
    总=总A1 + [I]。长度;
}的char [] = allchar新的char [总]的for(int i = 0; I< str.length;我++){
    //现在,这里我想跟你一起合并所有的char []数组。
//我应该怎么办呢?
}


解决方案

可以是这样做的。

 的char [] = allchar新的char [总] //你的code到这里是正确的//复制二维数组中的内容到一个新的一维数组
INT计数器= 0; //计数器为您allChar数组的索引
的for(int i = 0; I< a1.length;我++){
    对于(INT J = 0; J< A1 [I]。长度; J ++){//嵌套循环 - 典型的二维数组格式
        allchar [计数器++] = A1 [I] [J]。 //它复制到新数组
    }
}

We are given an array of Strings and what we require is a char[], i.e, array of all characters in all the Strings For example:

Input: [i, love, you]

output: [i, l, o, v, e, y, o, u]

First I made an array of arrays.

Then I have found the length of the required char[] array.

I have tried the following so far:

char[][] a1 = new char[str.length][];

for(int i =0;i<str.length;i++){
    a1[i]=str[i].toCharArray();
}

int total=0;
for(int i =0;i<str.length;i++){
    total = total + a1[i].length;
}

char[] allchar = new char[total];

for(int i=0;i<str.length;i++){
    //NOW HERE I WANT TO MERGE ALL THE char[] ARRAYS TOGETHER.
//HOW SHOULD I DO THIS?
}

解决方案

You can do that like this

char[] allchar = new char[total]; // Your code till here is proper

// Copying the contents of the 2d array to a new 1d array
int counter = 0; // Counter as the index of your allChar array
for (int i = 0; i < a1.length; i++) { 
    for (int j = 0; j < a1[i].length; j++) { // nested for loop - typical 2d array format
        allchar[counter++] = a1[i][j]; // copying it to the new array
    }
}

这篇关于如何转换一个String数组为char在Java数组的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆