Comment puis-je utiliser «<» et «>» dans javadoc sans formatage?


121

Si j'écris <xmlElement>dans un javadoc, cela n'apparaît pas, car les balises ont des fonctions spéciales sur le formatage des textes.

Comment puis-je afficher ces caractères dans un javadoc?


4
En relation mais pas tout à fait une dupe: stackoverflow.com/questions/1782040/…
Pop

Réponses:


160

Vous pouvez utiliser &lt;pour < et &gt;pour > .


ou vous pouvez utiliser & amp; pour échapper au &
ILMTitan

14
@TomBrito Bien que cela réponde à la question réelle, je pense que la nécessité d'échapper aux signes n'apparaît que lorsqu'ils sont utilisés comme crochets angulaires (c'est-à-dire par paires), ce qui implique à son tour qu'ils font partie d'un code (comme une balise XML, comme dans le cas d'OP). Dans cette situation, je pense qu'une meilleure solution consiste à envelopper l'extrait de code XML entier dans des {@code ...}balises, comme l'a suggéré Etienne Delavennat dans sa réponse.
Zoltán

&gtou &ltn'a pas exactement la même signification avec les crochets angulaires au format XML. Mais {@code <>}c'est un bon choix.
cinqS


41

Considérant que XML est du code réel, je pense que les extraits de code XML dans Javadoc sont mieux adaptés pour la balise {@code A <B> C} plutôt que pour la balise {@literal A <B> C}.

La balise {@code} utilise une police à largeur fixe qui fait ressortir son contenu en tant que code réel.


2
Je suis d'accord. XML doit être entouré de {@code }balises. Il sera affiché plus naturellement (avec une police à largeur fixe), et il n'aura pas l'air bizarre dans le javadoc source, car vous n'avez pas à échapper aux crochets angulaires séparément.
Zoltán


9

Il vous suffit d'utiliser l'équivalent HTML pour l'un des crochets angulaires. Le <peut être représenté par &lt;ou par &#60;. Voici un échantillon tiré du vrai Javadoc:

<pre>
& lt; complexType>
  & lt; complexContent>
    & lt; restriction base = "{http://www.w3.org/2001/XMLSchema}anyType">
      & lt; séquence>
      [...]

Cela s'affiche comme:

<complexType>
   <complexContent>
     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
       <sequence>


2

L'interposition de <pre> et {@code} enregistre les crochets angulaires et les lignes vides dans les javadocs et est largement utilisée, voir java.util.Stream par exemple.

<pre>{@code
   A<B>C

   D<E>F
}</pre>

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.