Java-Array-Teilzeichenfolge

7

Wie kann ich ein Array erstellen / instanziieren, das dem Teilstring eines anderen Arrays entspricht, in dem die Größe des Teilstrings unbekannt ist:

%Vor%     
Will 06.07.2011, 13:53
quelle

4 Antworten

12

Verwenden Sie Arrays.copyOfRange :

%Vor%
  

Kopiert den angegebenen Bereich des   spezifizierte Array in ein neues Array. Das   Anfangsindex des Bereichs ( from ) muss   liegen zwischen Null und original.length ,   inklusive. Der Wert bei original[from]   wird in das Anfangselement von platziert   die Kopie (außer from == original.length oder from == to ). Werte   von nachfolgenden Elementen in der   Original-Array werden in platziert   nachfolgende Elemente in der Kopie. Das   endgültiger Index des Bereichs ( to ), der   muss größer oder gleich sein als   kann größer sein als original.length ,   In diesem Fall wird null in allen platziert   Elemente der Kopie, deren Index ist   größer als oder gleich wie   %Code%. Die Länge von   Das zurückgegebene Array ist original.length - from .

     

Das resultierende Array ist genau das   gleiche Klasse wie das ursprüngliche Array.

In Ihrem Fall:

%Vor%     
NPE 06.07.2011, 13:56
quelle
8

Sie werden Arrays.copyOfRange() verwenden.

Hier ist ein Beispiel:

%Vor%

Die Javadocs für die Arrays -Klasse haben viele Informationen über die Methode:

    
jjnguy 06.07.2011 13:57
quelle
3

Verwenden Sie Arrays.copyOfRange() :

%Vor%

Wie der Name schon sagt, wird grp eine Kopie des ursprünglichen Arrays sein und keine Ansicht hinein. Sie können keine Ansichten in das Array einfügen, dafür müssen Sie eine Sammlung verwenden . Im Allgemeinen sind Sammlungen die leistungsstärkere und flexiblere Alternative zu Arrays auf hohem Niveau.

    
Joachim Sauer 06.07.2011 13:57
quelle
1

Um die Größe des Arrays zu erhalten, würden Sie

machen %Vor%

Dann müssen Sie nur noch die Elemente kopieren:

%Vor%     
JVM 06.07.2011 15:25
quelle

Tags und Links