ある記号で区切られた文字列を配列に変換する


よくある面接問題です.○○記号(","または"#")で区切られた文字列を配列に変換します.
考え方は2つあります.
(1)split()関数の使用
(2)StringTokenizer
例:strはカンマで区切られ、「aa,bb,cc,dd,ee,ff,gg」は配列に変換する必要があります.
コード:
import java.util.StringTokenizer;

public class Test3{
	public static void main(String[] args){
		String str="aa,bb,cc,dd,ee,ff,gg";
		String[] strArray1=null;
		System.out.println("----Method1: use split----"); //  split()  
		strArray1= str.split(",");
		
		// System.out.println("----Method2: use StringTokenizer----"); //  StringTokenizer
		// StringTokenizer st = new StringTokenizer(str,",");
		// String[] strArray1 = new String[st.countTokens()];

		// int a =0;
		// while(st.hasMoreTokens()){
		// 	strArray1[a++]=st.nextToken();
		// }
	
		//       
		for(int i=0;i

面接では「,」をカンマで区切る簡単な状況を質問するのが一般的ですが、2つの記号で区切る場合、split()関数を使用する場合はforループが必要で、StringTokenizerは必要ありません.
また、StringTokenizerというクラスは互換性のために保持されているレガシークラスであり、新しいコードでは使用が奨励されていません.
実際のシナリオの例:初期の高校クラウドプラットフォームの評価部分のように、学生の評価時に各評価項目のidとその学生の評価の点数を記録し、実現時にJavaScriptを使用してurlにパラメータを追加して伝達を継続する.
文字列の様式は、項目aのID、aの点数#項目bのID、bの点数#項目cのID、cの点数
後に具体的なコードを書くときも、パラメータを配列に変換することを選択します.初期評価ではsplit()関数を用いて変換した.