diff --git a/README.md b/README.md
index c8d72ae..8af26e5 100644
--- a/README.md
+++ b/README.md
@@ -608,6 +608,7 @@ import set "github.com/duke-git/lancet/v2/datastructure/set"
import tree "github.com/duke-git/lancet/v2/datastructure/tree"
import heap "github.com/duke-git/lancet/v2/datastructure/heap"
import hashmap "github.com/duke-git/lancet/v2/datastructure/hashmap"
+import optional "github.com/duke-git/lancet/v2/datastructure/optional"
```
#### Structure list:
@@ -630,6 +631,9 @@ import hashmap "github.com/duke-git/lancet/v2/datastructure/hashmap"
[[doc](https://github.com/duke-git/lancet/blob/main/docs/en/api/packages/datastructure/heap.md)]
- **Hashmap** : hash map structure.
[[doc](https://github.com/duke-git/lancet/blob/main/docs/en/api/packages/datastructure/hashmap.md)]
+- **Optional** : Optional container.
+ [[doc](https://github.com/duke-git/lancet/blob/main/docs/en/api/packages/datastructure/optional.md)]
+
9. Fileutil package implements some basic functions for file operations. index
diff --git a/docs/api/packages/datastructure/optional.md b/docs/api/packages/datastructure/optional.md
index ad7e283..4d9365a 100644
--- a/docs/api/packages/datastructure/optional.md
+++ b/docs/api/packages/datastructure/optional.md
@@ -27,7 +27,7 @@ import (
- [IsNotNil](#IsNotNil)
- [IsNil](#IsNil)
- [IsNotNil](#IsNotNil)
-- [IfNotNilOrElse](#IfPresentOrElse)
+- [IfNotNilOrElse](#IfNotNilOrElse)
- [Umwarp](#Umwarp)
- [OrElse](#OrElse)
- [OrElseGet](#OrElseGet)
diff --git a/docs/en/api/packages/datastructure/optional.md b/docs/en/api/packages/datastructure/optional.md
index 6554c64..0b91700 100644
--- a/docs/en/api/packages/datastructure/optional.md
+++ b/docs/en/api/packages/datastructure/optional.md
@@ -27,7 +27,7 @@ import (
- [IsNotNil](#IsNotNil)
- [IsNil](#IsNil)
- [IsNotNil](#IsNotNil)
-- [IfNotNilOrElse](#IfPresentOrElse)
+- [IfNotNilOrElse](#IfNotNilOrElse)
- [Umwarp](#Umwarp)
- [OrElse](#OrElse)
- [OrElseGet](#OrElseGet)