0

データを動的に入力したいcharsequenceがあります。値をハードコーディングしている場合は正常に機能しますが、そうでない場合は機能しません

こいつは働いてる

private void getDir(String dirPath){

     File f = new File(dirPath);
     File[] files = f.listFiles(); 
         final CharSequence[] items = {files[0].getPath(), files[1].getPath()};
}

これは実行時例外を与えています

private void getDir(String dirPath){

     File f = new File(dirPath);
     File[] files = f.listFiles(); 
         CharSequence[] items;
         items[0]=files[0].getPath();
     items[1]=files[1].getPath();
}

助けてください。

4

2 に答える 2

1

CharSequence[] items;2 番目の実装で初期化するのを忘れました 。

あなたは試すことができますCharSequence[] items = new CharSequence[2];

于 2012-05-11T11:40:03.070 に答える
1

items 配列を作成し、そのサイズを指定する必要があります。

次のようなものを試してください:

private void getDir(String dirPath){

    File f = new File(dirPath);
    File[] files = f.listFiles();
    CharSequence[] items = new CharSequence[files.length];
    for (int i=0; i< files.length; i++)
        items[i]=files[i].getPath();
}
于 2012-05-11T11:47:43.213 に答える