2016-04-11 14 views
-4

私はこのような文字列配列を持っている:
String A[] = {"65535", "00000", "00000", "00000", "00000", "A32CE", "43251", "98702", "ACED2", "98AAB", "00000", "00000", "00000", "65535", "65535"}文字列配列から特定の値を取得し、別の文字列配列に保存する方法は?

6553500000以外の値を取得し、このような別の文字列配列に保存する方法:私はすでにこれを試してみた
String B[] = {"A32CE", "43251", "98702", "ACED2", "98AAB"}

if(A!="65535" && A!="00000") 
{ 
    for(i=0; i<A.length; i++){ 
    B[i] = A[i]; 
    } 
} 

ただし、取得する戻り値は文字列A []です。助けてください。

+0

私はソリューションの完全なコードの説明を掲載しました。それが役に立つと分かったら、それをアップアップして、あなたの選択した答えとしてマークしてください! – Zulfe

答えて

1

オブジェクトではなく配列で作業しているので、ArrayListオブジェクトは少し面倒です。次のコードは、最初の配列を実行し、現在のStringが不要なものでないかどうかをチェックし、必要なものが見つかった場合はカウンタを1つ増やします。次に、最初の配列に必要なオブジェクトの数だけ大きな新しい配列を作成し、最初の配列を再び実行します。今回は、2番目の配列に追加するオブジェクトを追加します。

String[] arrayOne = {"65535", "00000", "00000", "00000", "00000", 
     "A32CE", "43251", "98702", "ACED2", "98AAB", 
     "00000", "00000", "00000", "65535", "65535"}; 

int validCounter = 0; 
for(int i = 0; i < arrayOne.length; i++) 
    if(!(arrayOne[i].equals("65535") || arrayOne[i].equals("00000"))) 
     validCounter++; 

String[] arrayTwo = new String[validCounter]; 
int arrayTwoPos = 0; 
for(int i = 0; i < arrayOne.length; i++) 
    if(!(arrayOne[i].equals("65535") || arrayOne[i].equals("00000"))){ 
     arrayTwo[arrayTwoPos] = arrayOne[i]; 
     arrayTwoPos++; 
    } 

for(int i = 0; i < arrayTwo.length; i++) 
    System.out.println(arrayTwo[i]); 
+0

また、 'arrayTwo'を返すようにしてください。 – Zulfe

+0

本当にありがとう、私が望むような仕事です。 – Anthony

関連する問題