2017-10-24 2 views
-3

Wie würden Sie minus von einer Split.length-Methode? Möchten Sie es einem int wie dem folgenden Code zuweisen, oder müssten Sie den Wert split.length speichern. Ein Beispiel möchte ich minus 1 aus dem Split.length Wert.Minus 1 oder ein anderer Wert aus einer Split.length? (Java)

+1

Was möchten Sie hier wirklich erreichen? Verringern Sie die Länge des Arrays? – Sridhar

+3

Was versuchst du eigentlich * zu erreichen? Wenn Sie den Wert von "a" ändern, ändert sich das Array nicht. Wenn Sie ein neues Array brauchen, das nicht den letzten Wert hat, erstellen Sie ein neues Array und kopieren Sie die anderen Elemente in ... –

+0

Sagen Sie zum Beispiel, der Wert des Arrays ist 3 Ich möchte minus 1 davon. – EverythingIsScience

Antwort

0

Ich glaube, was Sie wollten, war das letzte Element aus dem Array zu entfernen.

ich es wie folgt aus tun würde,

import java.util.Arrays; 

public class Test { 

    public static void main(String[] args) { 
     String i = "this is a test string"; 
     String[] split = i.split(" "); 

     System.out.println("Before" + split.length); 

     split = Arrays.copyOf(split, split.length - 1); 

     System.out.println("After" + split.length); 
    } 

} 

Dank für das @markspace Arrays.copyOf

Von Ihrem bearbeiten zu verwenden, zeigen, ich glaube, Sie wollen einfach nur die Anzahl der Räume, in String zu drucken.

public class Test { 

    public static void main(String[] args) { 
     String i = "this is a test string"; 
     System.out.println("[" + (i.split(" ").length - 1) + "]" + " Spaces in \"" + i + "\""); 
    } 

} 

Dies sollte es tun.

+0

Argh! Nein! Verwende 'Arrays.copy *'. – markspace

+0

Hmmmm, gut danke aber gibt es einen Weg ohne die. Util und einfacher wie diese – EverythingIsScience

+0

@EverythingIsScience nur den Code – Sridhar

Verwandte Themen