Come posso usare "<" e ">" in javadoc senza formattazione?


Risposte:


160

Puoi usare &lt;per < e &gt;per > .


oppure puoi usare & amp; per sfuggire alla &
ILMTitan

14
@TomBrito Sebbene questo risponda alla domanda vera e propria, credo che la necessità di sfuggire ai segni appaia solo quando sono usati come parentesi angolari (cioè a coppie), il che a sua volta implica che fanno parte di un codice (come un tag XML, come nel caso di OP). In questa situazione, credo che una soluzione migliore sia racchiudere l'intero snippet XML in {@code ...}tag, come suggerito da Etienne Delavennat nella sua risposta.
Zoltán

&gto &ltnon ha esattamente lo stesso significato con le parentesi angolari in formato XML. Ma {@code <>}è una scelta giusta.
cinqS


41

Considerando che XML è un codice effettivo, credo che gli snippet XML in Javadoc siano più adatti per il tag {@code A <B> C} piuttosto che per il tag {@literal A <B> C}.

Il tag {@code} utilizza un carattere a larghezza fissa che fa risaltare il suo contenuto come codice effettivo.


2
Sono d'accordo. XML dovrebbe essere racchiuso in {@code }tag. Verrà visualizzato in modo più naturale (con un carattere a larghezza fissa) e non apparirà strano nel javadoc sorgente, perché non è necessario sfuggire alle parentesi angolari separatamente.
Zoltán


9

Devi solo utilizzare l'equivalente HTML per una delle parentesi angolari. La <può essere rappresentato come uno &lt;o &#60;. Ecco un esempio tratto dal vero Javadoc:

<Pre>
& Lt; complexType>
  & Lt; complexContent>
    & lt; restrizione base = "{http://www.w3.org/2001/XMLSchema}anyType">
      & Lt; sequenza>
      [...]

Viene visualizzato come:

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


2

L'interposizione di <pre> e {@code} salva parentesi angolari e linee vuote in javadocs ed è ampiamente utilizzata, vedere java.util.Stream per esempio.

<pre>{@code
   A<B>C

   D<E>F
}</pre>

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.