> For the complete documentation index, see [llms.txt](https://leawinds-organization.gitbook.io/yetanotherconfiglib-jian-ti-zhong-wen-fei-guan-fang/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://leawinds-organization.gitbook.io/yetanotherconfiglib-jian-ti-zhong-wen-fei-guan-fang/tu-xing-jie-mian-de-gou-jian-gui-builder/te-shu-xuan-xiang.md).

# 特殊选项

了解其他Option实现以获得更多功能。

{% hint style="danger" %}
这不是官方文档！官方文档位于 [https://docs.isxander.dev](https://docs.isxander.dev/yet-another-config-lib/)
{% endhint %}

## `ListOption`

列表选项允许你轻松地从列表中添加、排序和删除元素，同时还允许使用[常规控制器](broken://pages/WQGsuagyeCQYfSWSqeXT)。

这些类型的选项是组和选项之间的混合体，其行为类似于两者，并且不允许将其添加到组中，但必须直接添加到类别中。 在幕后，每个选项条目都像常规选项一样，但没有名称。 此选项是列表条目的子选项，该选项具有用于重新定位和删除元素的额外按钮。

```java
ListOption.<String>createBuilder()
    .name(Component.literal("List Option"))
    .binding(/* 获取并设置一个列表，要求列表不为final，不操作列表*/)
    .controller(StringControllerBuilder::create) // 常规控制器，传递给每一个入口(entry)
    .initial("") // 当向列表添加一个新入口时，这是它拥有的初始化值
    .build()
```

重申一下，每个控制器都可以使用列表。

![](https://1519116863-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FWiUFZnUcH6D7I7YlJC1P%2Fuploads%2FuE46GcCWpYKuoSwab8a7%2F206925713-115d5737-19c5-4469-894c-710f6fc271cd.png?alt=media\&token=9d87ef9f-3d22-46e8-9981-ee6318549e35)

## `LabelOption`

## `ButtonOption`
