Beide von ihnen gibt True zurück, wenn es leeres char/white space ist oder andernfalls false zurückgibt. Meine Frage ist, warum Java hat sowohl die Methoden, wie sie das Gleiche tunWas ist der Unterschied zwischen Character.isWhitespace (char) und Character.isSpaceChar (char)
Antwort
Methode isSpaceChar(char)
ist nur für die Überprüfung Unicode-Leerzeichen (SPACE_SEPARATOR, LINE_SEPARATOR, PARAGRAPH_SEPARATOR), während Methode isWhiteSpace(char)
für Raum sowie andere Leerzeichen wie tab, Wagenrücklauf etc
char ch='\t';
System.out.println(Character.isWhitespace(ch));
System.out.println(Character.isSpaceChar(ch));
Es gibt
true
false
der Unterschied in der specification buchstabiert wird:
isWhiteSpace
: Bestimmt, ob das angegebene Zeichen gemäß Java Leerzeichen enthält. Ein Zeichen ist genau dann ein Java-Leerzeichen, wenn es eines der folgenden Kriterien erfüllt: [...]
isSpaceChar
: Bestimmt, ob das angegebene Zeichen ein Unicode-Leerzeichen ist. Ein Zeichen wird genau dann als Leerzeichen betrachtet, wenn es vom Unicode-Standard als Leerzeichen festgelegt wurde.
Diese beiden Definitionen sind unterschiedlich und abhängig vom Anwendungsfall benötigen Sie das eine oder das andere. Für einfache Bedürfnisse mag dir der Unterschied nicht wichtig sein, aber klar ist es da.
isSpaceChar
wird überprüft, ob das Zeichen ein Unicode-Space-Zeichen ist, während isWhitespace
nach einem beliebigen Leerzeichen Char sucht. Ein Zeichen ist ein Java-Leerzeichen, wenn und nur wenn sie eine der folgenden Kriterien erfüllen: es
It is a Unicode space character (SPACE_SEPARATOR, LINE_SEPARATOR, or PARAGRAPH_SEPARATOR) but is not also a non-breaking space ('\u00A0', '\u2007', '\u202F').
It is '\t', U+0009 HORIZONTAL TABULATION.
It is '\n', U+000A LINE FEED.
It is '\u000B', U+000B VERTICAL TABULATION.
It is '\f', U+000C FORM FEED.
It is '\r', U+000D CARRIAGE RETURN.
It is '\u001C', U+001C FILE SEPARATOR.
It is '\u001D', U+001D GROUP SEPARATOR.
It is '\u001E', U+001E RECORD SEPARATOR.
It is '\u001F', U+001F UNIT SEPARATOR.
So ist Überlappung als isWhitespace return true wird für Unicode Raum Zeichen, sondern auch eine ganze Menge mehr.
See: https://docs.oracle.com/javase/7/docs/api/java/lang/Character.html#isWhitespace(char)
- 1. Unterschied zwischen char * und char (*) [25]
- 2. Unterschied zwischen char * und char [] in C
- 3. Unterschied zwischen sizeof (char) und sizeof (char *)
- 4. Unterschied zwischen char und const char
- 5. Was ist der Unterschied zwischen char Werte und Charaktere
- 6. Was ist der Unterschied zwischen der Definition von char a [5] und char (* a) [5]?
- 7. Unterschied zwischen char [N] und char (&) [N] in Parameterliste
- 8. C++ ich kann den Unterschied zwischen const char * und char *
- 9. Unterschied zwischen char * str = "STRING" und char str [] = "STRING"?
- 10. Speicherzuweisung char * und char []
- 11. Unterschied zwischen char * (arr [5]) und char (* arr) [5]
- 12. Unterschied zwischen statischem const char * und const char *
- 13. C - Unterschied zwischen "Char Var []" und "Char * Var"?
- 14. Der Unterschied zwischen char * s = new char [] und char s [20]?
- 15. Unterschied zwischen const char * p und char const * p
- 16. MySQL - Unterschied zwischen Char und Varchar?
- 17. praktische Unterschied zwischen int und char
- 18. Unterschied zwischen char a [] = "string"; char * p = "Zeichenkette";
- 19. Unterschied zwischen Byte und Char in C
- 20. Was ist der Unterschied zwischen QByteArray und QList <unsigned char> oder QVector <unsigned char>?
- 21. Was ist der Unterschied zwischen strcpy und "="?
- 22. Was ist ein `char *`?
- 23. Unterschied zwischen char und int bei der Deklaration von Zeichen
- 24. Welchen Effekt hat das Umwandeln des Integer-Referenzwerts auf (const char *) und was ist der Unterschied zwischen cast zu char * und caste zu const char * in C++?
- 25. In C, gilt der Unterschied zwischen char * s und char s [] für andere Typen?
- 26. Was ist der Unterschied zwischen alloca (n) und char x [n]?
- 27. Was ist der Unterschied zwischen Zeiger auf 2D-Char-Array und Zeiger auf 2D-Int-Array?
- 28. Warum der Typ Char ist -> Char -> Char
- 29. Was ist der Unterschied zwischen diesen beiden Deklarationen von char ?? Welches ist korrekt?
- 30. Unterschied zwischen BYTE und CHAR in Spalte Datentypen
Hier ist der Java-Charakter API: https://docs.oracle.com/javase/7/docs/api/java/lang/Character.html Bitte beiden Methoden lesen und Sie werden sieh den Unterschied... – brso05