Javaでライブラリ関数(例:-split、tocharArrayなど)を使用せずに文字列をcharの配列に変換する方法はありますか?
質問する
12996 次
5 に答える
1
String str = "abcd";
char[] arr = str.toCharArray(); // What is the wrong with this way
char 配列を手動で作成できます。
String str = "abcd";
char[] arr = new char[str.length()];
for (int i = 0; i < str.length(); i++) {
arr[i] = str.charAt(i);
}
于 2013-08-09T10:24:30.750 に答える
0
これは、java.io.StringReader
ここに小さなスニペットがあります:
public static void main(String[] args)
{
try
{
String s = "hello world";
StringReader reader = new StringReader(s);
char[] cc = new char[1];
cc[0] = (char) reader.read();
char[] tmpCC = null;
int readChar = 0;
int lenConcatenator = cc.length;
while((readChar = reader.read())!=-1)
{
++lenConcatenator;
tmpCC = new char[cc.length];
System.arraycopy(cc, 0, tmpCC, 0, cc.length);
cc = new char[lenConcatenator];
System.arraycopy(tmpCC, 0, cc, 0, tmpCC.length);
cc[lenConcatenator - 1] = (char) readChar;
}
System.out.println(cc);
}
catch (Exception e)
{
e.printStackTrace();
}
}
于 2014-11-03T10:48:29.480 に答える
0
toCharArray()
文字列ライブラリである使用。java.lang.String
このライブラリは、クラス内の実際の実装に置き換えることができます。これがなければ、達成できる場合は提案してください。
import java.util.Scanner;
public class ReverseStringWOInbuilt {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
char[] ch = sc.nextLine().toCharArray();
char temp;
for (int i = 0, j = ch.length-1; i < j; i++, j--) {
temp = ch[i];
ch[i] = ch[j];
ch[j] = temp;
}
System.out.println(new String(ch));
}
}
于 2015-11-29T13:52:27.573 に答える