如何在Javadoc中创建多级缩进?

How to create multiple levels of indentation in Javadoc?

提问人:James Raitsev 提问时间:6/25/2011 最后编辑:Paŭlo EbermannJames Raitsev 更新时间:11/10/2023 访问量:95944

问:

假设,作为记录代码 (Javadoc) 的一部分,您希望使用深度缩进来指示元素之间的关系。

如何将嵌套列表创建为:

  • 一些元素
    • 其他一些元素
      • 还有一些其他因素
文档 javadoc 缩进 嵌套列表

评论


答:

188赞 Charlie Martin 6/25/2011 #1
<ul>
  <li>Element</li>
  <ul>
     <li>Subelement...</li>

您可以在 javadoc 注释中非常自由地使用 HTML。

更新:因为它出现了,我试过了

<ul>
    <li>one</li>
    <ul>
        <li>one point one</li>
    </ul>   
</ul>

并得到

    • 一分一

我同意适当的嵌套更好。

评论

2赞 user2622016 9/5/2013
我会说嵌套的 <ul> 必须在某个 <li> 元素中,为了进行比较,请参阅 w3.org/wiki/HTML_lists#Nesting_lists
2赞 Rauni Lillemets 4/24/2014
@Charlie 与其说“我同意适当的嵌套更好”,不如写一个例子来说明如何正确地嵌套?否则,也许一些初学者不会理解您的评论并使用上述表格。
2赞 Rauni Lillemets 4/25/2014
我理解user2622016的意思是你必须这样写:<ul><li><ul>...</ul></li></ul>,使最里面的<ul>..</ul> 也在 <li>..</li>块。
3赞 SeverityOne 4/18/2018
不过,要做的一件事是删除标签。他们不应该在那里。JavaDoc 不是 HTML,尽管它借鉴了它。标签也是如此,您不应该在 JavaDoc 中使用它们。</li></p>
3赞 SeverityOne 4/19/2018
虽然我找不到明确说明(我确实看过),但这是 Oracle 文档中使用的样式。此外,NetBeans 对此表示不满。另一方面,Intellij 很高兴地添加了标签</li>
7赞 Drew Noakes 9/18/2016 #2

嵌套列表应位于其自己的 . 不是 的有效子元素。<li><ul><ul>

所以你的例子是:

<ul>
  <li>some element</li>
  <li>
    <ul>
      <li>some other element</li>
      <li>
        <ul>
          <li>yet some other element</li>
        </ul>
      </li>
    </ul>
  </li>
</ul>

评论

0赞 naXa stands with Ukraine 4/27/2018
您的代码将生成一个包含空项的列表。虽然它正确地嵌套在 HTML 中,但呈现的结果很丑陋。
0赞 Top-Master 1/19/2021
(¬_¬)在这种情况下,有效的 HTML 似乎是无效的 JavaDoc (>ლ)
51赞 SeverityOne 4/18/2018 #3

正确的方法如下:

/**
 * <ul>
 *   <li>some element
 *   <li><ul>
 *     <li>some other element
 *     <li><ul>
 *       <li>yet some other element
 *     </ul>
 *   </ul>
 * </ul>
 */

尽管 JavaDoc 借用了 HTML,但它不是 HTML,您应该省略标签,就像您应该省略标签一样。</li></p>

评论

4赞 friederbluemle 6/28/2018
省略结束标签的任何参考资料吗?
5赞 SeverityOne 7/1/2018
是的,这里:oracle.com/technetwork/java/javase/documentation/... - 尽管它是隐含的而不是明确的。
0赞 SensorSmith 9/4/2021
为什么你认为省略 </p> 标签与不是 HTML 有任何关系?在大多数情况下,在 HTML 中省略 </p> 标记是合法的。当 HTML 通常被“手动”编辑时,这甚至是常见的做法,就像 javadoc 一样。
1赞 SeverityOne 9/7/2021
你在推断一些我从未说过的事情。我说的是你应该省略 </p> 标签。在 HTML 中,什么是合法的,什么是不合法的,并不是那么重要。
1赞 SeverityOne 2/6/2022
因为事实并非如此。有关更多信息,请参阅 StackOverflow 上的此问题。对于允许使用哪些 HTML 标记存在限制。
0赞 GreenMarty 11/10/2023 #4

替代更简单、更快速的方法在 javdoc 中保持缩进

<pre>...</pre>

简单来说,它呈现出所写的行格式。
最好在使用前咨询您的团队,以防万一。

例如,这个

/**
* <pre>
* - some element
*    - some other element
*       - yet some other element
* </pre>
*/

将呈现如下:

 - some element
    - some other element
       - yet some other element

阳性:

  • 比多级 HTML 嵌套更具代码可读性
  • 简单
  • 快速打字
  • 保持行缩进和空格tab
  • 基本上是所见即所得
  • 可用于通过使用{@code ...}

缺点:

  • 软线换行被调整到块内最长的线,因此需要手动换行<pre>...</pre>