web-dev-qa-db-fra.com

Que fait exactement String.codePointAt?

Récemment, j'ai rencontré codePointAt method of String in Java. J'ai aussi trouvé quelques autres méthodes codePoint: codePointBefore, codePointCount etc. Elles ont certainement quelque chose à voir avec Unicode mais je ne les comprends pas. 

Maintenant, je me demande quand et comment utiliser codePointAt et des méthodes similaires.

34
Michael

Les points de code prennent en charge les caractères supérieurs à 65535, qui est Caractère.MAX_VALUE.

Si vous avez du texte avec des caractères aussi élevés, vous devez utiliser des points de code ou int au lieu de chars.

Cela ne prend pas cela en charge UTF-16 qui peut utiliser un ou deux caractères 16 bits et le transformer en int

Selon les informations dont je dispose, cela n’est généralement requis que pour les caractères/ Multiliguels supplémentaires et Caractères idéographiques supplémentaires ajoutés récemment, tels que le chinois non traditionnel.

5
Peter Lawrey

En bref, rarement aussi longtemps que vous utilisez le jeu de caractères par défaut en Java :) Mais pour une explication plus détaillée, essayez ces articles:

Comparer un caractère à un point de code?http://docs.Oracle.com/javase/1.5.0/docs/api/Java/lang/Character.htmlhttp://javarevisited.blogspot.com /2012/01/Java-string-codepoint-get-unicode.html

J'espère que cela aide à clarifier les choses pour vous :)

0
JTMon