-1
public class TextFileExtractor{
    public static String[] fileExtractor(String[] s){

        StringBuilder sb=new StringBuilder();

        for(int i=0;i<=s.length-1;i++){
            if(s[i].endsWith(".txt")){
                sb.append(s[i]);
                sb.append(',');
            }
        }
        String str=sb.toString();
        String[] sa=str.split(",");

    return sa;
}
}


//P8Test.java

import java.util.*;

class P8Test{

    public static void main(String[] args) 
    {   Scanner scn=new Scanner(System.in);
        System.out.print("Enter String Array:");
        String[] data=(scn.nextLine()).split(",");

/ここでは、文字列を変換した後に取得した配列を格納しています (これを動的に読み取ります) .split() メソッドを使用します/

            System.out.print("all Files");
                System.out.print(Arrays.toString(data));
                    System.out.print("Text Files");

        String[] res=TextFileExtractor.fileExtractor(data);
        System.out.print(Arrays.toString(res));


    }
}

// P8Test クラスscn.nextLine()).split(",")で(String[]オブジェクトに data.bcozSystem.out.print(Arrays.toString(data));を保存できないのはなぜですかabc.txt,bbc.txt,bbc.pdf.

4

1 に答える 1

1

変更前にお伝えした通り

String[] data = new String[(scn.nextLine()).length()];
data = (scn.nextLine()).split(",");

String[] data = scn.nextLine().split(",");

そして、コードを試してください。

以前は、ユーザー入力の 2 行目に基づいて配列を作成していました。これは、 scn.nextLine()2 回呼び出しを行っていたためです。

于 2012-06-30T20:03:22.317 に答える