将字符串转换为字符数组

时间:2014-07-17 10:53:37

标签: java arrays string char

我已使用toCharArray将String输入转换为字符数组。 现在我想在不使用toCharArray的情况下做同样的事情。 我该怎么办?

import java.util.*;
public class cArray{

public static void main(String[]args){

Scanner input = new Scanner(System.in);

    System.out.println("Please Give A String");
    String s1 = input.nextLine();
    char[]data = s1.toCharArray();
  }

}

3 个答案:

答案 0 :(得分:5)

您可以通过构建新的char数组

来实现
   String s1="test";
   char[] carr=new char[s1.length()];
   for (int i=0;i<s1.length();i++){
       carr[i]=s1.charAt(i);
   }

不要告诉我们,我也不想使用charAt;)

答案 1 :(得分:1)

或者你可以这样做

public char[] toCharArray(String str) {
    char result[] = new char[str.length()];
    System.arraycopy(str, 0, result, 0, str.length);
    return result;
}

PS:这就是Java在toCharArray()方法中所做的...;)

答案 2 :(得分:0)

为什么不自己写一点方法

public char[] toCharacterArray( String s ) {

   char[] array = new char[s.length()];
   for (int i = 0; i < s.length(); i++) {
      array[i] = s.charAt(i);
   }

   return array;
}

现在,您可以使用自己的循环来决定使用上面提到的charArray方法或chartAt()。