1
0
mirror of https://github.com/duke-git/lancet.git synced 2026-02-12 16:52:29 +08:00
Files
lancet/docs/.vitepress/dist/api/packages/datastructure/copyonwritelist.html
2023-08-30 15:08:27 +08:00

386 lines
154 KiB
HTML
Raw Blame History

This file contains invisible Unicode characters
This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<!DOCTYPE html>
<html lang="zh-CN" dir="ltr">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width,initial-scale=1">
<title>CopyOnWriteList | Lancet</title>
<meta name="description" content="一个强大的Go语言工具函数库">
<link rel="preload stylesheet" href="/assets/style.d1d977d1.css" as="style">
<script type="module" src="/assets/app.531ff9c7.js"></script>
<link rel="preload" href="/assets/inter-roman-latin.2ed14f66.woff2" as="font" type="font/woff2" crossorigin="">
<link rel="modulepreload" href="/assets/chunks/framework.6e839c56.js">
<link rel="modulepreload" href="/assets/chunks/theme.4451c782.js">
<link rel="modulepreload" href="/assets/api_packages_datastructure_copyonwritelist.md.1a351580.lean.js">
<link rel="icon" type="image/png" href="/lancet_logo_mini.png">
<meta name="theme-color" content="#5f67ee">
<meta name="og:type" content="website">
<meta name="og:locale" content="zh">
<script id="check-dark-light">(()=>{const e=localStorage.getItem("vitepress-theme-appearance")||"dark",a=window.matchMedia("(prefers-color-scheme: dark)").matches;(!e||e==="auto"?a:e==="dark")&&document.documentElement.classList.add("dark")})();</script>
<meta property="og:url" content="https://golancet.cn">
<meta property="og:description" content="一个强大的Go语言工具函数库">
</head>
<body>
<div id="app"><div class="Layout" data-v-324e8308><!--[--><!--]--><!--[--><span tabindex="-1" data-v-9c8615dd></span><a href="#VPContent" class="VPSkipLink visually-hidden" data-v-9c8615dd> Skip to content </a><!--]--><!----><header class="VPNav" data-v-324e8308 data-v-5bdc5df3><div class="VPNavBar has-sidebar" data-v-5bdc5df3 data-v-c8ceaf10><div class="container" data-v-c8ceaf10><div class="title" data-v-c8ceaf10><div class="VPNavBarTitle has-sidebar" data-v-c8ceaf10 data-v-2973dbb4><a class="title" href="/" data-v-2973dbb4><!--[--><!--]--><!--[--><img class="VPImage logo" src="/lancet_logo_mini.png" width="24" height="24" alt data-v-ab19afbb><!--]--><!--[-->Lancet<!--]--><!--[--><!--]--></a></div></div><div class="content" data-v-c8ceaf10><div class="curtain" data-v-c8ceaf10></div><div class="content-body" data-v-c8ceaf10><!--[--><!--]--><div class="VPNavBarSearch search" style="--vp-meta-key:&#39;Meta&#39;;" data-v-c8ceaf10><!--[--><!----><div id="local-search"><button type="button" class="DocSearch DocSearch-Button" aria-label="Search"><span class="DocSearch-Button-Container"><svg class="DocSearch-Search-Icon" width="20" height="20" viewBox="0 0 20 20" aria-label="search icon"><path d="M14.386 14.386l4.0877 4.0877-4.0877-4.0877c-2.9418 2.9419-7.7115 2.9419-10.6533 0-2.9419-2.9418-2.9419-7.7115 0-10.6533 2.9418-2.9419 7.7115-2.9419 10.6533 0 2.9419 2.9418 2.9419 7.7115 0 10.6533z" stroke="currentColor" fill="none" fill-rule="evenodd" stroke-linecap="round" stroke-linejoin="round"></path></svg><span class="DocSearch-Button-Placeholder">Search</span></span><span class="DocSearch-Button-Keys"><kbd class="DocSearch-Button-Key"></kbd><kbd class="DocSearch-Button-Key">K</kbd></span></button></div><!--]--></div><nav aria-labelledby="main-nav-aria-label" class="VPNavBarMenu menu" data-v-c8ceaf10 data-v-f732b5d0><span id="main-nav-aria-label" class="visually-hidden" data-v-f732b5d0>Main Navigation</span><!--[--><!--[--><a class="VPLink link VPNavBarMenuLink active" href="/" tabindex="0" data-v-f732b5d0 data-v-e5ab8091><!--[--><span data-v-e5ab8091>首页</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/guide/introduction.html" tabindex="0" data-v-f732b5d0 data-v-e5ab8091><!--[--><span data-v-e5ab8091>指南</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink active" href="/api/overview.html" tabindex="0" data-v-f732b5d0 data-v-e5ab8091><!--[--><span data-v-e5ab8091>API</span><!--]--></a><!--]--><!--[--><div class="VPFlyout VPNavBarMenuGroup" data-v-f732b5d0 data-v-6b19ffdd><button type="button" class="button" aria-haspopup="true" aria-expanded="false" data-v-6b19ffdd><span class="text" data-v-6b19ffdd><!----><span data-v-6b19ffdd>相关链接</span><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" viewbox="0 0 24 24" class="text-icon" data-v-6b19ffdd><path d="M12,16c-0.3,0-0.5-0.1-0.7-0.3l-6-6c-0.4-0.4-0.4-1,0-1.4s1-0.4,1.4,0l5.3,5.3l5.3-5.3c0.4-0.4,1-0.4,1.4,0s0.4,1,0,1.4l-6,6C12.5,15.9,12.3,16,12,16z"></path></svg></span></button><div class="menu" data-v-6b19ffdd><div class="VPMenu" data-v-6b19ffdd data-v-e42ed9b3><div class="items" data-v-e42ed9b3><!--[--><!--[--><div class="VPMenuLink" data-v-e42ed9b3 data-v-2a4d50e5><a class="VPLink link vp-external-link-icon" href="https://github.com/duke-git/lancet/discussions" target="_blank" rel="noreferrer" data-v-2a4d50e5><!--[-->论坛<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-e42ed9b3 data-v-2a4d50e5><a class="VPLink link vp-external-link-icon" href="https://github.com/duke-git/lancet/releases" target="_blank" rel="noreferrer" data-v-2a4d50e5><!--[-->更新日志<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-e42ed9b3 data-v-2a4d50e5><a class="VPLink link vp-external-link-icon" href="https://github.com/duke-git/lancet/blob/main/CONTRIBUTING.zh-CN.md" target="_blank" rel="noreferrer" data-v-2a4d50e5><!--[-->参与贡献<!--]--></a></div><!--]--><!--]--></div><!--[--><!--]--></div></div></div><!--]--><!--]--></nav><div class="VPFlyout VPNavBarTranslations translations" data-v-c8ceaf10 data-v-ff4524ae data-v-6b19ffdd><button type="button" class="button" aria-haspopup="true" aria-expanded="false" aria-label="Change language" data-v-6b19ffdd><span class="text" data-v-6b19ffdd><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" viewbox="0 0 24 24" class="option-icon" data-v-6b19ffdd><path d="M0 0h24v24H0z" fill="none"></path><path d=" M12.87 15.07l-2.54-2.51.03-.03c1.74-1.94 2.98-4.17 3.71-6.53H17V4h-7V2H8v2H1v1.99h11.17C11.5 7.92 10.44 9.75 9 11.35 8.07 10.32 7.3 9.19 6.69 8h-2c.73 1.63 1.73 3.17 2.98 4.56l-5.09 5.02L4 19l5-5 3.11 3.11.76-2.04zM18.5 10h-2L12 22h2l1.12-3h4.75L21 22h2l-4.5-12zm-2.62 7l1.62-4.33L19.12 17h-3.24z " class="css-c4d79v"></path></svg><!----><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" viewbox="0 0 24 24" class="text-icon" data-v-6b19ffdd><path d="M12,16c-0.3,0-0.5-0.1-0.7-0.3l-6-6c-0.4-0.4-0.4-1,0-1.4s1-0.4,1.4,0l5.3,5.3l5.3-5.3c0.4-0.4,1-0.4,1.4,0s0.4,1,0,1.4l-6,6C12.5,15.9,12.3,16,12,16z"></path></svg></span></button><div class="menu" data-v-6b19ffdd><div class="VPMenu" data-v-6b19ffdd data-v-e42ed9b3><!----><!--[--><!--[--><div class="items" data-v-ff4524ae><p class="title" data-v-ff4524ae>简体中文</p><!--[--><div class="VPMenuLink" data-v-ff4524ae data-v-2a4d50e5><a class="VPLink link" href="/en/api/packages/datastructure/copyonwritelist.html" data-v-2a4d50e5><!--[-->English<!--]--></a></div><!--]--></div><!--]--><!--]--></div></div></div><div class="VPNavBarAppearance appearance" data-v-c8ceaf10 data-v-5e9f0637><button class="VPSwitch VPSwitchAppearance" type="button" role="switch" title="toggle dark mode" aria-checked="false" data-v-5e9f0637 data-v-a99ed743 data-v-92d8f6fb><span class="check" data-v-92d8f6fb><span class="icon" data-v-92d8f6fb><!--[--><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" viewbox="0 0 24 24" class="sun" data-v-a99ed743><path d="M12,18c-3.3,0-6-2.7-6-6s2.7-6,6-6s6,2.7,6,6S15.3,18,12,18zM12,8c-2.2,0-4,1.8-4,4c0,2.2,1.8,4,4,4c2.2,0,4-1.8,4-4C16,9.8,14.2,8,12,8z"></path><path d="M12,4c-0.6,0-1-0.4-1-1V1c0-0.6,0.4-1,1-1s1,0.4,1,1v2C13,3.6,12.6,4,12,4z"></path><path d="M12,24c-0.6,0-1-0.4-1-1v-2c0-0.6,0.4-1,1-1s1,0.4,1,1v2C13,23.6,12.6,24,12,24z"></path><path d="M5.6,6.6c-0.3,0-0.5-0.1-0.7-0.3L3.5,4.9c-0.4-0.4-0.4-1,0-1.4s1-0.4,1.4,0l1.4,1.4c0.4,0.4,0.4,1,0,1.4C6.2,6.5,5.9,6.6,5.6,6.6z"></path><path d="M19.8,20.8c-0.3,0-0.5-0.1-0.7-0.3l-1.4-1.4c-0.4-0.4-0.4-1,0-1.4s1-0.4,1.4,0l1.4,1.4c0.4,0.4,0.4,1,0,1.4C20.3,20.7,20,20.8,19.8,20.8z"></path><path d="M3,13H1c-0.6,0-1-0.4-1-1s0.4-1,1-1h2c0.6,0,1,0.4,1,1S3.6,13,3,13z"></path><path d="M23,13h-2c-0.6,0-1-0.4-1-1s0.4-1,1-1h2c0.6,0,1,0.4,1,1S23.6,13,23,13z"></path><path d="M4.2,20.8c-0.3,0-0.5-0.1-0.7-0.3c-0.4-0.4-0.4-1,0-1.4l1.4-1.4c0.4-0.4,1-0.4,1.4,0s0.4,1,0,1.4l-1.4,1.4C4.7,20.7,4.5,20.8,4.2,20.8z"></path><path d="M18.4,6.6c-0.3,0-0.5-0.1-0.7-0.3c-0.4-0.4-0.4-1,0-1.4l1.4-1.4c0.4-0.4,1-0.4,1.4,0s0.4,1,0,1.4l-1.4,1.4C18.9,6.5,18.6,6.6,18.4,6.6z"></path></svg><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" viewbox="0 0 24 24" class="moon" data-v-a99ed743><path d="M12.1,22c-0.3,0-0.6,0-0.9,0c-5.5-0.5-9.5-5.4-9-10.9c0.4-4.8,4.2-8.6,9-9c0.4,0,0.8,0.2,1,0.5c0.2,0.3,0.2,0.8-0.1,1.1c-2,2.7-1.4,6.4,1.3,8.4c2.1,1.6,5,1.6,7.1,0c0.3-0.2,0.7-0.3,1.1-0.1c0.3,0.2,0.5,0.6,0.5,1c-0.2,2.7-1.5,5.1-3.6,6.8C16.6,21.2,14.4,22,12.1,22zM9.3,4.4c-2.9,1-5,3.6-5.2,6.8c-0.4,4.4,2.8,8.3,7.2,8.7c2.1,0.2,4.2-0.4,5.8-1.8c1.1-0.9,1.9-2.1,2.4-3.4c-2.5,0.9-5.3,0.5-7.5-1.1C9.2,11.4,8.1,7.7,9.3,4.4z"></path></svg><!--]--></span></span></button></div><div class="VPSocialLinks VPNavBarSocialLinks social-links" data-v-c8ceaf10 data-v-ef6192dc data-v-e71e869c><!--[--><a class="VPSocialLink no-icon" href="https://github.com/duke-git/lancet" aria-label="github" target="_blank" rel="noopener" data-v-e71e869c data-v-16cf740a><svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>GitHub</title><path d="M12 .297c-6.63 0-12 5.373-12 12 0 5.303 3.438 9.8 8.205 11.385.6.113.82-.258.82-.577 0-.285-.01-1.04-.015-2.04-3.338.724-4.042-1.61-4.042-1.61C4.422 18.07 3.633 17.7 3.633 17.7c-1.087-.744.084-.729.084-.729 1.205.084 1.838 1.236 1.838 1.236 1.07 1.835 2.809 1.305 3.495.998.108-.776.417-1.305.76-1.605-2.665-.3-5.466-1.332-5.466-5.93 0-1.31.465-2.38 1.235-3.22-.135-.303-.54-1.523.105-3.176 0 0 1.005-.322 3.3 1.23.96-.267 1.98-.399 3-.405 1.02.006 2.04.138 3 .405 2.28-1.552 3.285-1.23 3.285-1.23.645 1.653.24 2.873.12 3.176.765.84 1.23 1.91 1.23 3.22 0 4.61-2.805 5.625-5.475 5.92.42.36.81 1.096.81 2.22 0 1.606-.015 2.896-.015 3.286 0 .315.21.69.825.57C20.565 22.092 24 17.592 24 12.297c0-6.627-5.373-12-12-12"/></svg></a><!--]--></div><div class="VPFlyout VPNavBarExtra extra" data-v-c8ceaf10 data-v-c8c2ae4b data-v-6b19ffdd><button type="button" class="button" aria-haspopup="true" aria-expanded="false" aria-label="extra navigation" data-v-6b19ffdd><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" viewbox="0 0 24 24" class="icon" data-v-6b19ffdd><circle cx="12" cy="12" r="2"></circle><circle cx="19" cy="12" r="2"></circle><circle cx="5" cy="12" r="2"></circle></svg></button><div class="menu" data-v-6b19ffdd><div class="VPMenu" data-v-6b19ffdd data-v-e42ed9b3><!----><!--[--><!--[--><div class="group translations" data-v-c8c2ae4b><p class="trans-title" data-v-c8c2ae4b>简体中文</p><!--[--><div class="VPMenuLink" data-v-c8c2ae4b data-v-2a4d50e5><a class="VPLink link" href="/en/api/packages/datastructure/copyonwritelist.html" data-v-2a4d50e5><!--[-->English<!--]--></a></div><!--]--></div><div class="group" data-v-c8c2ae4b><div class="item appearance" data-v-c8c2ae4b><p class="label" data-v-c8c2ae4b>Appearance</p><div class="appearance-action" data-v-c8c2ae4b><button class="VPSwitch VPSwitchAppearance" type="button" role="switch" title="toggle dark mode" aria-checked="false" data-v-c8c2ae4b data-v-a99ed743 data-v-92d8f6fb><span class="check" data-v-92d8f6fb><span class="icon" data-v-92d8f6fb><!--[--><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" viewbox="0 0 24 24" class="sun" data-v-a99ed743><path d="M12,18c-3.3,0-6-2.7-6-6s2.7-6,6-6s6,2.7,6,6S15.3,18,12,18zM12,8c-2.2,0-4,1.8-4,4c0,2.2,1.8,4,4,4c2.2,0,4-1.8,4-4C16,9.8,14.2,8,12,8z"></path><path d="M12,4c-0.6,0-1-0.4-1-1V1c0-0.6,0.4-1,1-1s1,0.4,1,1v2C13,3.6,12.6,4,12,4z"></path><path d="M12,24c-0.6,0-1-0.4-1-1v-2c0-0.6,0.4-1,1-1s1,0.4,1,1v2C13,23.6,12.6,24,12,24z"></path><path d="M5.6,6.6c-0.3,0-0.5-0.1-0.7-0.3L3.5,4.9c-0.4-0.4-0.4-1,0-1.4s1-0.4,1.4,0l1.4,1.4c0.4,0.4,0.4,1,0,1.4C6.2,6.5,5.9,6.6,5.6,6.6z"></path><path d="M19.8,20.8c-0.3,0-0.5-0.1-0.7-0.3l-1.4-1.4c-0.4-0.4-0.4-1,0-1.4s1-0.4,1.4,0l1.4,1.4c0.4,0.4,0.4,1,0,1.4C20.3,20.7,20,20.8,19.8,20.8z"></path><path d="M3,13H1c-0.6,0-1-0.4-1-1s0.4-1,1-1h2c0.6,0,1,0.4,1,1S3.6,13,3,13z"></path><path d="M23,13h-2c-0.6,0-1-0.4-1-1s0.4-1,1-1h2c0.6,0,1,0.4,1,1S23.6,13,23,13z"></path><path d="M4.2,20.8c-0.3,0-0.5-0.1-0.7-0.3c-0.4-0.4-0.4-1,0-1.4l1.4-1.4c0.4-0.4,1-0.4,1.4,0s0.4,1,0,1.4l-1.4,1.4C4.7,20.7,4.5,20.8,4.2,20.8z"></path><path d="M18.4,6.6c-0.3,0-0.5-0.1-0.7-0.3c-0.4-0.4-0.4-1,0-1.4l1.4-1.4c0.4-0.4,1-0.4,1.4,0s0.4,1,0,1.4l-1.4,1.4C18.9,6.5,18.6,6.6,18.4,6.6z"></path></svg><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" viewbox="0 0 24 24" class="moon" data-v-a99ed743><path d="M12.1,22c-0.3,0-0.6,0-0.9,0c-5.5-0.5-9.5-5.4-9-10.9c0.4-4.8,4.2-8.6,9-9c0.4,0,0.8,0.2,1,0.5c0.2,0.3,0.2,0.8-0.1,1.1c-2,2.7-1.4,6.4,1.3,8.4c2.1,1.6,5,1.6,7.1,0c0.3-0.2,0.7-0.3,1.1-0.1c0.3,0.2,0.5,0.6,0.5,1c-0.2,2.7-1.5,5.1-3.6,6.8C16.6,21.2,14.4,22,12.1,22zM9.3,4.4c-2.9,1-5,3.6-5.2,6.8c-0.4,4.4,2.8,8.3,7.2,8.7c2.1,0.2,4.2-0.4,5.8-1.8c1.1-0.9,1.9-2.1,2.4-3.4c-2.5,0.9-5.3,0.5-7.5-1.1C9.2,11.4,8.1,7.7,9.3,4.4z"></path></svg><!--]--></span></span></button></div></div></div><div class="group" data-v-c8c2ae4b><div class="item social-links" data-v-c8c2ae4b><div class="VPSocialLinks social-links-list" data-v-c8c2ae4b data-v-e71e869c><!--[--><a class="VPSocialLink no-icon" href="https://github.com/duke-git/lancet" aria-label="github" target="_blank" rel="noopener" data-v-e71e869c data-v-16cf740a><svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>GitHub</title><path d="M12 .297c-6.63 0-12 5.373-12 12 0 5.303 3.438 9.8 8.205 11.385.6.113.82-.258.82-.577 0-.285-.01-1.04-.015-2.04-3.338.724-4.042-1.61-4.042-1.61C4.422 18.07 3.633 17.7 3.633 17.7c-1.087-.744.084-.729.084-.729 1.205.084 1.838 1.236 1.838 1.236 1.07 1.835 2.809 1.305 3.495.998.108-.776.417-1.305.76-1.605-2.665-.3-5.466-1.332-5.466-5.93 0-1.31.465-2.38 1.235-3.22-.135-.303-.54-1.523.105-3.176 0 0 1.005-.322 3.3 1.23.96-.267 1.98-.399 3-.405 1.02.006 2.04.138 3 .405 2.28-1.552 3.285-1.23 3.285-1.23.645 1.653.24 2.873.12 3.176.765.84 1.23 1.91 1.23 3.22 0 4.61-2.805 5.625-5.475 5.92.42.36.81 1.096.81 2.22 0 1.606-.015 2.896-.015 3.286 0 .315.21.69.825.57C20.565 22.092 24 17.592 24 12.297c0-6.627-5.373-12-12-12"/></svg></a><!--]--></div></div></div><!--]--><!--]--></div></div></div><!--[--><!--]--><button type="button" class="VPNavBarHamburger hamburger" aria-label="mobile navigation" aria-expanded="false" aria-controls="VPNavScreen" data-v-c8ceaf10 data-v-6bee1efd><span class="container" data-v-6bee1efd><span class="top" data-v-6bee1efd></span><span class="middle" data-v-6bee1efd></span><span class="bottom" data-v-6bee1efd></span></span></button></div></div></div></div><!----></header><div class="VPLocalNav reached-top" data-v-324e8308 data-v-693d654a><button class="menu" aria-expanded="false" aria-controls="VPSidebarNav" data-v-693d654a><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" viewbox="0 0 24 24" class="menu-icon" data-v-693d654a><path d="M17,11H3c-0.6,0-1-0.4-1-1s0.4-1,1-1h14c0.6,0,1,0.4,1,1S17.6,11,17,11z"></path><path d="M21,7H3C2.4,7,2,6.6,2,6s0.4-1,1-1h18c0.6,0,1,0.4,1,1S21.6,7,21,7z"></path><path d="M21,15H3c-0.6,0-1-0.4-1-1s0.4-1,1-1h18c0.6,0,1,0.4,1,1S21.6,15,21,15z"></path><path d="M17,19H3c-0.6,0-1-0.4-1-1s0.4-1,1-1h14c0.6,0,1,0.4,1,1S17.6,19,17,19z"></path></svg><span class="menu-text" data-v-693d654a>Menu</span></button><div class="VPLocalNavOutlineDropdown" style="--vp-vh:0px;" data-v-693d654a data-v-e8ae7d87><button data-v-e8ae7d87>Return to top</button><!----></div></div><aside class="VPSidebar" data-v-324e8308 data-v-b04a928c><div class="curtain" data-v-b04a928c></div><nav class="nav" id="VPSidebarNav" aria-labelledby="sidebar-aria-label" tabindex="-1" data-v-b04a928c><span class="visually-hidden" id="sidebar-aria-label" data-v-b04a928c> Sidebar Navigation </span><!--[--><!--]--><!--[--><div class="group" data-v-b04a928c><section class="VPSidebarItem level-0" data-v-b04a928c data-v-c356ab37><div class="item" role="button" tabindex="0" data-v-c356ab37><div class="indicator" data-v-c356ab37></div><h2 class="text" data-v-c356ab37>概览</h2><!----></div><div class="items" data-v-c356ab37><!--[--><div class="VPSidebarItem level-1 is-link" data-v-c356ab37 data-v-c356ab37><div class="item" data-v-c356ab37><div class="indicator" data-v-c356ab37></div><a class="VPLink link link" href="/api/overview.html" data-v-c356ab37><!--[--><p class="text" data-v-c356ab37>API概述</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><div class="group" data-v-b04a928c><section class="VPSidebarItem level-0 collapsible has-active" data-v-b04a928c data-v-c356ab37><div class="item" role="button" tabindex="0" data-v-c356ab37><div class="indicator" data-v-c356ab37></div><h2 class="text" data-v-c356ab37>API文档</h2><div class="caret" role="button" aria-label="toggle section" tabindex="0" data-v-c356ab37><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" viewbox="0 0 24 24" class="caret-icon" data-v-c356ab37><path d="M9,19c-0.3,0-0.5-0.1-0.7-0.3c-0.4-0.4-0.4-1,0-1.4l5.3-5.3L8.3,6.7c-0.4-0.4-0.4-1,0-1.4s1-0.4,1.4,0l6,6c0.4,0.4,0.4,1,0,1.4l-6,6C9.5,18.9,9.3,19,9,19z"></path></svg></div></div><div class="items" data-v-c356ab37><!--[--><div class="VPSidebarItem level-1 is-link" data-v-c356ab37 data-v-c356ab37><div class="item" data-v-c356ab37><div class="indicator" data-v-c356ab37></div><a class="VPLink link link" href="/api/packages/algorithm.html" data-v-c356ab37><!--[--><p class="text" data-v-c356ab37>算法</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-c356ab37 data-v-c356ab37><div class="item" data-v-c356ab37><div class="indicator" data-v-c356ab37></div><a class="VPLink link link" href="/api/packages/compare.html" data-v-c356ab37><!--[--><p class="text" data-v-c356ab37>比较器</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-c356ab37 data-v-c356ab37><div class="item" data-v-c356ab37><div class="indicator" data-v-c356ab37></div><a class="VPLink link link" href="/api/packages/concurrency.html" data-v-c356ab37><!--[--><p class="text" data-v-c356ab37>并发处理</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-c356ab37 data-v-c356ab37><div class="item" data-v-c356ab37><div class="indicator" data-v-c356ab37></div><a class="VPLink link link" href="/api/packages/condition.html" data-v-c356ab37><!--[--><p class="text" data-v-c356ab37>条件判断</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-c356ab37 data-v-c356ab37><div class="item" data-v-c356ab37><div class="indicator" data-v-c356ab37></div><a class="VPLink link link" href="/api/packages/convertor.html" data-v-c356ab37><!--[--><p class="text" data-v-c356ab37>类型转换</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-c356ab37 data-v-c356ab37><div class="item" data-v-c356ab37><div class="indicator" data-v-c356ab37></div><a class="VPLink link link" href="/api/packages/cryptor.html" data-v-c356ab37><!--[--><p class="text" data-v-c356ab37>加密&解密</p><!--]--></a><!----></div><!----></div><section class="VPSidebarItem level-1 collapsible has-active" data-v-c356ab37 data-v-c356ab37><div class="item" role="button" tabindex="0" data-v-c356ab37><div class="indicator" data-v-c356ab37></div><h3 class="text" data-v-c356ab37>数据结构</h3><div class="caret" role="button" aria-label="toggle section" tabindex="0" data-v-c356ab37><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" viewbox="0 0 24 24" class="caret-icon" data-v-c356ab37><path d="M9,19c-0.3,0-0.5-0.1-0.7-0.3c-0.4-0.4-0.4-1,0-1.4l5.3-5.3L8.3,6.7c-0.4-0.4-0.4-1,0-1.4s1-0.4,1.4,0l6,6c0.4,0.4,0.4,1,0,1.4l-6,6C9.5,18.9,9.3,19,9,19z"></path></svg></div></div><div class="items" data-v-c356ab37><!--[--><div class="VPSidebarItem level-2 is-link" data-v-c356ab37 data-v-c356ab37><div class="item" data-v-c356ab37><div class="indicator" data-v-c356ab37></div><a class="VPLink link link" href="/api/packages/datastructure/list.html" data-v-c356ab37><!--[--><p class="text" data-v-c356ab37>线性表</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-2 is-link" data-v-c356ab37 data-v-c356ab37><div class="item" data-v-c356ab37><div class="indicator" data-v-c356ab37></div><a class="VPLink link link" href="/api/packages/datastructure/copyonwritelist.html" data-v-c356ab37><!--[--><p class="text" data-v-c356ab37>线性表(线程安全)</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-2 is-link" data-v-c356ab37 data-v-c356ab37><div class="item" data-v-c356ab37><div class="indicator" data-v-c356ab37></div><a class="VPLink link link" href="/api/packages/datastructure/link.html" data-v-c356ab37><!--[--><p class="text" data-v-c356ab37>链表</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-2 is-link" data-v-c356ab37 data-v-c356ab37><div class="item" data-v-c356ab37><div class="indicator" data-v-c356ab37></div><a class="VPLink link link" href="/api/packages/datastructure/stack.html" data-v-c356ab37><!--[--><p class="text" data-v-c356ab37></p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-2 is-link" data-v-c356ab37 data-v-c356ab37><div class="item" data-v-c356ab37><div class="indicator" data-v-c356ab37></div><a class="VPLink link link" href="/api/packages/datastructure/queue.html" data-v-c356ab37><!--[--><p class="text" data-v-c356ab37>队列</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-2 is-link" data-v-c356ab37 data-v-c356ab37><div class="item" data-v-c356ab37><div class="indicator" data-v-c356ab37></div><a class="VPLink link link" href="/api/packages/datastructure/heap.html" data-v-c356ab37><!--[--><p class="text" data-v-c356ab37></p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-2 is-link" data-v-c356ab37 data-v-c356ab37><div class="item" data-v-c356ab37><div class="indicator" data-v-c356ab37></div><a class="VPLink link link" href="/api/packages/datastructure/tree.html" data-v-c356ab37><!--[--><p class="text" data-v-c356ab37></p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-2 is-link" data-v-c356ab37 data-v-c356ab37><div class="item" data-v-c356ab37><div class="indicator" data-v-c356ab37></div><a class="VPLink link link" href="/api/packages/datastructure/set.html" data-v-c356ab37><!--[--><p class="text" data-v-c356ab37>集合</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-2 is-link" data-v-c356ab37 data-v-c356ab37><div class="item" data-v-c356ab37><div class="indicator" data-v-c356ab37></div><a class="VPLink link link" href="/api/packages/datastructure/hashmap.html" data-v-c356ab37><!--[--><p class="text" data-v-c356ab37>HashMap</p><!--]--></a><!----></div><!----></div><!--]--></div></section><div class="VPSidebarItem level-1 is-link" data-v-c356ab37 data-v-c356ab37><div class="item" data-v-c356ab37><div class="indicator" data-v-c356ab37></div><a class="VPLink link link" href="/api/packages/datetime.html" data-v-c356ab37><!--[--><p class="text" data-v-c356ab37>日期&时间</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-c356ab37 data-v-c356ab37><div class="item" data-v-c356ab37><div class="indicator" data-v-c356ab37></div><a class="VPLink link link" href="/api/packages/fileutil.html" data-v-c356ab37><!--[--><p class="text" data-v-c356ab37>文件</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-c356ab37 data-v-c356ab37><div class="item" data-v-c356ab37><div class="indicator" data-v-c356ab37></div><a class="VPLink link link" href="/api/packages/formatter.html" data-v-c356ab37><!--[--><p class="text" data-v-c356ab37>格式化工具</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-c356ab37 data-v-c356ab37><div class="item" data-v-c356ab37><div class="indicator" data-v-c356ab37></div><a class="VPLink link link" href="/api/packages/function.html" data-v-c356ab37><!--[--><p class="text" data-v-c356ab37>函数</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-c356ab37 data-v-c356ab37><div class="item" data-v-c356ab37><div class="indicator" data-v-c356ab37></div><a class="VPLink link link" href="/api/packages/mathutil.html" data-v-c356ab37><!--[--><p class="text" data-v-c356ab37>数学工具</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-c356ab37 data-v-c356ab37><div class="item" data-v-c356ab37><div class="indicator" data-v-c356ab37></div><a class="VPLink link link" href="/api/packages/maputil.html" data-v-c356ab37><!--[--><p class="text" data-v-c356ab37>Map</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-c356ab37 data-v-c356ab37><div class="item" data-v-c356ab37><div class="indicator" data-v-c356ab37></div><a class="VPLink link link" href="/api/packages/netutil.html" data-v-c356ab37><!--[--><p class="text" data-v-c356ab37>网络</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-c356ab37 data-v-c356ab37><div class="item" data-v-c356ab37><div class="indicator" data-v-c356ab37></div><a class="VPLink link link" href="/api/packages/pointer.html" data-v-c356ab37><!--[--><p class="text" data-v-c356ab37>指针</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-c356ab37 data-v-c356ab37><div class="item" data-v-c356ab37><div class="indicator" data-v-c356ab37></div><a class="VPLink link link" href="/api/packages/random.html" data-v-c356ab37><!--[--><p class="text" data-v-c356ab37>随机数</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-c356ab37 data-v-c356ab37><div class="item" data-v-c356ab37><div class="indicator" data-v-c356ab37></div><a class="VPLink link link" href="/api/packages/retry.html" data-v-c356ab37><!--[--><p class="text" data-v-c356ab37>重试</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-c356ab37 data-v-c356ab37><div class="item" data-v-c356ab37><div class="indicator" data-v-c356ab37></div><a class="VPLink link link" href="/api/packages/slice.html" data-v-c356ab37><!--[--><p class="text" data-v-c356ab37>切片</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-c356ab37 data-v-c356ab37><div class="item" data-v-c356ab37><div class="indicator" data-v-c356ab37></div><a class="VPLink link link" href="/api/packages/stream.html" data-v-c356ab37><!--[--><p class="text" data-v-c356ab37></p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-c356ab37 data-v-c356ab37><div class="item" data-v-c356ab37><div class="indicator" data-v-c356ab37></div><a class="VPLink link link" href="/api/packages/struct.html" data-v-c356ab37><!--[--><p class="text" data-v-c356ab37>结构体</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-c356ab37 data-v-c356ab37><div class="item" data-v-c356ab37><div class="indicator" data-v-c356ab37></div><a class="VPLink link link" href="/api/packages/strutil.html" data-v-c356ab37><!--[--><p class="text" data-v-c356ab37>字符串</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-c356ab37 data-v-c356ab37><div class="item" data-v-c356ab37><div class="indicator" data-v-c356ab37></div><a class="VPLink link link" href="/api/packages/system.html" data-v-c356ab37><!--[--><p class="text" data-v-c356ab37>系统</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-c356ab37 data-v-c356ab37><div class="item" data-v-c356ab37><div class="indicator" data-v-c356ab37></div><a class="VPLink link link" href="/api/packages/tuple.html" data-v-c356ab37><!--[--><p class="text" data-v-c356ab37>元组</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-c356ab37 data-v-c356ab37><div class="item" data-v-c356ab37><div class="indicator" data-v-c356ab37></div><a class="VPLink link link" href="/api/packages/validator.html" data-v-c356ab37><!--[--><p class="text" data-v-c356ab37>验证器</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-c356ab37 data-v-c356ab37><div class="item" data-v-c356ab37><div class="indicator" data-v-c356ab37></div><a class="VPLink link link" href="/api/packages/xerror.html" data-v-c356ab37><!--[--><p class="text" data-v-c356ab37>错误处理</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><!--]--><!--[--><!--]--></nav></aside><div class="VPContent has-sidebar" id="VPContent" data-v-324e8308 data-v-3cf691b6><div class="VPDoc has-sidebar has-aside" data-v-3cf691b6 data-v-a3c25e27><!--[--><!--]--><div class="container" data-v-a3c25e27><div class="aside" data-v-a3c25e27><div class="aside-curtain" data-v-a3c25e27></div><div class="aside-container" data-v-a3c25e27><div class="aside-content" data-v-a3c25e27><div class="VPDocAside" data-v-a3c25e27 data-v-cb998dce><!--[--><!--]--><!--[--><!--]--><div class="VPDocAsideOutline" data-v-cb998dce data-v-c834746b><div class="content" data-v-c834746b><div class="outline-marker" data-v-c834746b></div><div class="outline-title" data-v-c834746b>本页内容</div><nav aria-labelledby="doc-outline-aria-label" data-v-c834746b><span class="visually-hidden" id="doc-outline-aria-label" data-v-c834746b> Table of Contents for current page </span><ul class="root" data-v-c834746b data-v-463da30f><!--[--><!--]--></ul></nav></div></div><!--[--><!--]--><div class="spacer" data-v-cb998dce></div><!--[--><!--]--><!----><!--[--><!--]--><!--[--><!--]--></div></div></div></div><div class="content" data-v-a3c25e27><div class="content-container" data-v-a3c25e27><!--[--><!--]--><!----><main class="main" data-v-a3c25e27><div style="position:relative;" class="vp-doc _api_packages_datastructure_copyonwritelist" data-v-a3c25e27><div><h1 id="CopyOnWriteList" tabindex="-1">CopyOnWriteList <a class="header-anchor" href="#CopyOnWriteList" aria-label="Permalink to &quot;CopyOnWriteList&quot;"></a></h1><p>CopyOnWriteList 是一个线程安全的 List 实现,底层使用 go 切片。写入时,会复制一份新的切片,写入完成后,再将新的切片赋值给原来的切片。读取时,直接读取原来的切片。</p><h2 id="源码" tabindex="-1">源码 <a class="header-anchor" href="#源码" aria-label="Permalink to &quot;源码&quot;"></a></h2><ul><li><a href="https://github.com/duke-git/lancet/blob/main/datastructure/list/copyonwritelist.go" target="_blank" rel="noreferrer">https://github.com/duke-git/lancet/blob/main/datastructure/list/copyonwritelist.go</a></li></ul><h2 id="用法" tabindex="-1">用法 <a class="header-anchor" href="#用法" aria-label="Permalink to &quot;用法&quot;"></a></h2><div class="language-go vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">go</span><pre class="shiki dracula-soft vp-code-dark"><code><span class="line"><span style="color:#F286C4;">import</span><span style="color:#F6F6F4;"> (</span></span>
<span class="line"><span style="color:#F6F6F4;"> </span><span style="color:#DEE492;">&quot;</span><span style="color:#E7EE98;">github.com/duke-git/lancet/datastructure/list</span><span style="color:#DEE492;">&quot;</span></span>
<span class="line"><span style="color:#F6F6F4;">)</span></span></code></pre><pre class="shiki vitesse-light vp-code-light"><code><span class="line"><span style="color:#1E754F;">import</span><span style="color:#393A34;"> </span><span style="color:#999999;">(</span></span>
<span class="line"><span style="color:#393A34;"> </span><span style="color:#B5695999;">&quot;</span><span style="color:#59873A;">github.com/duke-git/lancet/datastructure/list</span><span style="color:#B5695999;">&quot;</span></span>
<span class="line"><span style="color:#999999;">)</span></span></code></pre></div><div STYLE="page-break-after: always;"></div><h2 id="目录" tabindex="-1">目录 <a class="header-anchor" href="#目录" aria-label="Permalink to &quot;目录&quot;"></a></h2><ul><li><a href="#NewCopyOnWriteList">NewCopyOnWriteList</a></li><li><a href="#Size">Size</a></li><li><a href="#Get">Get</a></li><li><a href="#Set">Set</a></li><li><a href="#Remove">Remove</a></li><li><a href="#IndexOf">IndexOf</a></li><li><a href="#LastIndexOf">LastIndexOf</a></li><li><a href="#IsEmpty">IsEmpty</a></li><li><a href="#Contain">Contain</a></li><li><a href="#ValueOf">ValueOf</a></li><li><a href="#Add">Add</a></li><li><a href="#AddAll">AddAll</a></li><li><a href="#AddByIndex">AddByIndex</a></li><li><a href="#DeleteAt">DeleteAt</a></li><li><a href="#DeleteIf">DeleteIf</a></li><li><a href="#DeleteBy">DeleteBy</a></li><li><a href="#DeleteRange">DeleteRange</a></li><li><a href="#Equal">Equal</a></li></ul><h2 id="文档" tabindex="-1">文档 <a class="header-anchor" href="#文档" aria-label="Permalink to &quot;文档&quot;"></a></h2><h3 id="NewCopyOnWriteList" tabindex="-1">NewCopyOnWriteList <a class="header-anchor" href="#NewCopyOnWriteList" aria-label="Permalink to &quot;NewCopyOnWriteList&quot;"></a></h3><p>返回一个具有空切片的 CopyOnWriteList。</p><div class="language-go vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">go</span><pre class="shiki dracula-soft vp-code-dark"><code><span class="line"><span style="color:#F286C4;">type</span><span style="color:#F6F6F4;"> </span><span style="color:#97E1F1;font-style:italic;">CopyOnWriteList</span><span style="color:#F6F6F4;">[T any] </span><span style="color:#F286C4;">struct</span><span style="color:#F6F6F4;"> {</span></span>
<span class="line"><span style="color:#F6F6F4;"> data []T</span></span>
<span class="line"><span style="color:#F6F6F4;"> lock sync.Locker</span></span>
<span class="line"><span style="color:#F6F6F4;">}</span></span>
<span class="line"></span>
<span class="line"><span style="color:#F286C4;">func</span><span style="color:#F6F6F4;"> </span><span style="color:#62E884;">NewCopyOnWriteList</span><span style="color:#F6F6F4;">() </span><span style="color:#F286C4;">*</span><span style="color:#F6F6F4;">CopyOnWriteList</span></span></code></pre><pre class="shiki vitesse-light vp-code-light"><code><span class="line"><span style="color:#1E754F;">type</span><span style="color:#393A34;"> </span><span style="color:#2E8F82;">CopyOnWriteList</span><span style="color:#999999;">[</span><span style="color:#393A34;">T any</span><span style="color:#999999;">]</span><span style="color:#393A34;"> </span><span style="color:#1E754F;">struct</span><span style="color:#393A34;"> </span><span style="color:#999999;">{</span></span>
<span class="line"><span style="color:#393A34;"> data </span><span style="color:#999999;">[]</span><span style="color:#393A34;">T</span></span>
<span class="line"><span style="color:#393A34;"> lock sync</span><span style="color:#999999;">.</span><span style="color:#393A34;">Locker</span></span>
<span class="line"><span style="color:#999999;">}</span></span>
<span class="line"></span>
<span class="line"><span style="color:#1E754F;">func</span><span style="color:#393A34;"> </span><span style="color:#59873A;">NewCopyOnWriteList</span><span style="color:#999999;">()</span><span style="color:#393A34;"> </span><span style="color:#AB5959;">*</span><span style="color:#393A34;">CopyOnWriteList</span></span></code></pre></div><h4 id="示例" tabindex="-1">示例 <a class="header-anchor" href="#示例" aria-label="Permalink to &quot;示例&quot;"></a></h4><div class="language-go vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">go</span><pre class="shiki dracula-soft vp-code-dark"><code><span class="line"><span style="color:#F286C4;">package</span><span style="color:#F6F6F4;"> main</span></span>
<span class="line"></span>
<span class="line"><span style="color:#F286C4;">import</span><span style="color:#F6F6F4;"> (</span></span>
<span class="line"><span style="color:#F6F6F4;"> </span><span style="color:#DEE492;">&quot;</span><span style="color:#E7EE98;">fmt</span><span style="color:#DEE492;">&quot;</span></span>
<span class="line"><span style="color:#F6F6F4;"> </span><span style="color:#DEE492;">&quot;</span><span style="color:#E7EE98;">github.com/duke-git/lancet/datastructure/list</span><span style="color:#DEE492;">&quot;</span></span>
<span class="line"><span style="color:#F6F6F4;">)</span></span>
<span class="line"></span>
<span class="line"><span style="color:#F286C4;">func</span><span style="color:#F6F6F4;"> </span><span style="color:#62E884;">main</span><span style="color:#F6F6F4;">() {</span></span>
<span class="line"><span style="color:#F6F6F4;"> l </span><span style="color:#F286C4;">:=</span><span style="color:#F6F6F4;"> list.</span><span style="color:#97E1F1;">NewCopyOnWriteList</span><span style="color:#F6F6F4;">([]</span><span style="color:#97E1F1;font-style:italic;">int</span><span style="color:#F6F6F4;">{</span><span style="color:#BF9EEE;">1</span><span style="color:#F6F6F4;">,</span><span style="color:#BF9EEE;">2</span><span style="color:#F6F6F4;">,</span><span style="color:#BF9EEE;">3</span><span style="color:#F6F6F4;">})</span></span>
<span class="line"><span style="color:#F6F6F4;"> fmt.</span><span style="color:#97E1F1;">Println</span><span style="color:#F6F6F4;">(l)</span></span>
<span class="line"><span style="color:#F6F6F4;">}</span></span></code></pre><pre class="shiki vitesse-light vp-code-light"><code><span class="line"><span style="color:#1E754F;">package</span><span style="color:#393A34;"> </span><span style="color:#59873A;">main</span></span>
<span class="line"></span>
<span class="line"><span style="color:#1E754F;">import</span><span style="color:#393A34;"> </span><span style="color:#999999;">(</span></span>
<span class="line"><span style="color:#393A34;"> </span><span style="color:#B5695999;">&quot;</span><span style="color:#59873A;">fmt</span><span style="color:#B5695999;">&quot;</span></span>
<span class="line"><span style="color:#393A34;"> </span><span style="color:#B5695999;">&quot;</span><span style="color:#59873A;">github.com/duke-git/lancet/datastructure/list</span><span style="color:#B5695999;">&quot;</span></span>
<span class="line"><span style="color:#999999;">)</span></span>
<span class="line"></span>
<span class="line"><span style="color:#1E754F;">func</span><span style="color:#393A34;"> </span><span style="color:#59873A;">main</span><span style="color:#999999;">()</span><span style="color:#393A34;"> </span><span style="color:#999999;">{</span></span>
<span class="line"><span style="color:#393A34;"> </span><span style="color:#B07D48;">l</span><span style="color:#393A34;"> </span><span style="color:#999999;">:=</span><span style="color:#393A34;"> list</span><span style="color:#999999;">.</span><span style="color:#998418;">NewCopyOnWriteList</span><span style="color:#999999;">([]</span><span style="color:#AB5959;">int</span><span style="color:#999999;">{</span><span style="color:#2F798A;">1</span><span style="color:#999999;">,</span><span style="color:#2F798A;">2</span><span style="color:#999999;">,</span><span style="color:#2F798A;">3</span><span style="color:#999999;">})</span></span>
<span class="line"><span style="color:#393A34;"> fmt</span><span style="color:#999999;">.</span><span style="color:#998418;">Println</span><span style="color:#999999;">(</span><span style="color:#393A34;">l</span><span style="color:#999999;">)</span></span>
<span class="line"><span style="color:#999999;">}</span></span></code></pre></div><h3 id="Size" tabindex="-1">Size <a class="header-anchor" href="#Size" aria-label="Permalink to &quot;Size&quot;"></a></h3><p>返回 CopyOnWriteList 的长度。</p><div class="language-go vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">go</span><pre class="shiki dracula-soft vp-code-dark"><code><span class="line"><span style="color:#F286C4;">func</span><span style="color:#F6F6F4;"> (l </span><span style="color:#F286C4;">*</span><span style="color:#F6F6F4;">CopyOnWriteList[T]) </span><span style="color:#62E884;">Size</span><span style="color:#F6F6F4;">() </span><span style="color:#97E1F1;font-style:italic;">int</span></span></code></pre><pre class="shiki vitesse-light vp-code-light"><code><span class="line"><span style="color:#1E754F;">func</span><span style="color:#393A34;"> </span><span style="color:#999999;">(</span><span style="color:#393A34;">l </span><span style="color:#AB5959;">*</span><span style="color:#393A34;">CopyOnWriteList</span><span style="color:#999999;">[</span><span style="color:#393A34;">T</span><span style="color:#999999;">])</span><span style="color:#393A34;"> </span><span style="color:#59873A;">Size</span><span style="color:#999999;">()</span><span style="color:#393A34;"> </span><span style="color:#AB5959;">int</span></span></code></pre></div><h4 id="示例-1" tabindex="-1">示例 <a class="header-anchor" href="#示例-1" aria-label="Permalink to &quot;示例&quot;"></a></h4><div class="language-go vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">go</span><pre class="shiki dracula-soft vp-code-dark"><code><span class="line"><span style="color:#F286C4;">package</span><span style="color:#F6F6F4;"> main</span></span>
<span class="line"></span>
<span class="line"><span style="color:#F286C4;">import</span><span style="color:#F6F6F4;"> (</span></span>
<span class="line"><span style="color:#F6F6F4;"> </span><span style="color:#DEE492;">&quot;</span><span style="color:#E7EE98;">fmt</span><span style="color:#DEE492;">&quot;</span></span>
<span class="line"><span style="color:#F6F6F4;"> </span><span style="color:#DEE492;">&quot;</span><span style="color:#E7EE98;">github.com/duke-git/lancet/datastructure/list</span><span style="color:#DEE492;">&quot;</span></span>
<span class="line"><span style="color:#F6F6F4;">)</span></span>
<span class="line"></span>
<span class="line"><span style="color:#F286C4;">func</span><span style="color:#F6F6F4;"> </span><span style="color:#62E884;">main</span><span style="color:#F6F6F4;">() {</span></span>
<span class="line"><span style="color:#F6F6F4;"> l </span><span style="color:#F286C4;">:=</span><span style="color:#F6F6F4;"> list.</span><span style="color:#97E1F1;">NewCopyOnWriteList</span><span style="color:#F6F6F4;">([]</span><span style="color:#97E1F1;font-style:italic;">int</span><span style="color:#F6F6F4;">{</span><span style="color:#BF9EEE;">1</span><span style="color:#F6F6F4;">,</span><span style="color:#BF9EEE;">2</span><span style="color:#F6F6F4;">,</span><span style="color:#BF9EEE;">3</span><span style="color:#F6F6F4;">})</span></span>
<span class="line"><span style="color:#F6F6F4;"> fmt.</span><span style="color:#97E1F1;">Println</span><span style="color:#F6F6F4;">(l.</span><span style="color:#97E1F1;">Size</span><span style="color:#F6F6F4;">())</span></span>
<span class="line"><span style="color:#F6F6F4;">}</span></span></code></pre><pre class="shiki vitesse-light vp-code-light"><code><span class="line"><span style="color:#1E754F;">package</span><span style="color:#393A34;"> </span><span style="color:#59873A;">main</span></span>
<span class="line"></span>
<span class="line"><span style="color:#1E754F;">import</span><span style="color:#393A34;"> </span><span style="color:#999999;">(</span></span>
<span class="line"><span style="color:#393A34;"> </span><span style="color:#B5695999;">&quot;</span><span style="color:#59873A;">fmt</span><span style="color:#B5695999;">&quot;</span></span>
<span class="line"><span style="color:#393A34;"> </span><span style="color:#B5695999;">&quot;</span><span style="color:#59873A;">github.com/duke-git/lancet/datastructure/list</span><span style="color:#B5695999;">&quot;</span></span>
<span class="line"><span style="color:#999999;">)</span></span>
<span class="line"></span>
<span class="line"><span style="color:#1E754F;">func</span><span style="color:#393A34;"> </span><span style="color:#59873A;">main</span><span style="color:#999999;">()</span><span style="color:#393A34;"> </span><span style="color:#999999;">{</span></span>
<span class="line"><span style="color:#393A34;"> </span><span style="color:#B07D48;">l</span><span style="color:#393A34;"> </span><span style="color:#999999;">:=</span><span style="color:#393A34;"> list</span><span style="color:#999999;">.</span><span style="color:#998418;">NewCopyOnWriteList</span><span style="color:#999999;">([]</span><span style="color:#AB5959;">int</span><span style="color:#999999;">{</span><span style="color:#2F798A;">1</span><span style="color:#999999;">,</span><span style="color:#2F798A;">2</span><span style="color:#999999;">,</span><span style="color:#2F798A;">3</span><span style="color:#999999;">})</span></span>
<span class="line"><span style="color:#393A34;"> fmt</span><span style="color:#999999;">.</span><span style="color:#998418;">Println</span><span style="color:#999999;">(</span><span style="color:#393A34;">l</span><span style="color:#999999;">.</span><span style="color:#998418;">Size</span><span style="color:#999999;">())</span></span>
<span class="line"><span style="color:#999999;">}</span></span></code></pre></div><h3 id="Get" tabindex="-1">Get <a class="header-anchor" href="#Get" aria-label="Permalink to &quot;Get&quot;"></a></h3><p>返回列表中指定位置的元素</p><div class="language-go vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">go</span><pre class="shiki dracula-soft vp-code-dark"><code><span class="line"><span style="color:#F286C4;">func</span><span style="color:#F6F6F4;"> (c </span><span style="color:#F286C4;">*</span><span style="color:#F6F6F4;">CopyOnWriteList[T]) </span><span style="color:#62E884;">Get</span><span style="color:#F6F6F4;">(index </span><span style="color:#97E1F1;font-style:italic;">int</span><span style="color:#F6F6F4;">) </span><span style="color:#F286C4;">*</span><span style="color:#F6F6F4;">T</span></span></code></pre><pre class="shiki vitesse-light vp-code-light"><code><span class="line"><span style="color:#1E754F;">func</span><span style="color:#393A34;"> </span><span style="color:#999999;">(</span><span style="color:#393A34;">c </span><span style="color:#AB5959;">*</span><span style="color:#393A34;">CopyOnWriteList</span><span style="color:#999999;">[</span><span style="color:#393A34;">T</span><span style="color:#999999;">])</span><span style="color:#393A34;"> </span><span style="color:#59873A;">Get</span><span style="color:#999999;">(</span><span style="color:#393A34;">index </span><span style="color:#AB5959;">int</span><span style="color:#999999;">)</span><span style="color:#393A34;"> </span><span style="color:#AB5959;">*</span><span style="color:#393A34;">T</span></span></code></pre></div><h4 id="示例-2" tabindex="-1">示例 <a class="header-anchor" href="#示例-2" aria-label="Permalink to &quot;示例&quot;"></a></h4><div class="language-go vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">go</span><pre class="shiki dracula-soft vp-code-dark"><code><span class="line"><span style="color:#F286C4;">package</span><span style="color:#F6F6F4;"> main</span></span>
<span class="line"></span>
<span class="line"><span style="color:#F286C4;">import</span><span style="color:#F6F6F4;"> (</span></span>
<span class="line"><span style="color:#F6F6F4;"> </span><span style="color:#DEE492;">&quot;</span><span style="color:#E7EE98;">fmt</span><span style="color:#DEE492;">&quot;</span></span>
<span class="line"><span style="color:#F6F6F4;"> </span><span style="color:#DEE492;">&quot;</span><span style="color:#E7EE98;">github.com/duke-git/lancet/datastructure/list</span><span style="color:#DEE492;">&quot;</span></span>
<span class="line"><span style="color:#F6F6F4;">)</span></span>
<span class="line"></span>
<span class="line"><span style="color:#F286C4;">func</span><span style="color:#F6F6F4;"> </span><span style="color:#62E884;">main</span><span style="color:#F6F6F4;">() {</span></span>
<span class="line"><span style="color:#F6F6F4;"> l </span><span style="color:#F286C4;">:=</span><span style="color:#F6F6F4;"> list.</span><span style="color:#97E1F1;">NewCopyOnWriteList</span><span style="color:#F6F6F4;">([]</span><span style="color:#97E1F1;font-style:italic;">int</span><span style="color:#F6F6F4;">{</span><span style="color:#BF9EEE;">1</span><span style="color:#F6F6F4;">,</span><span style="color:#BF9EEE;">2</span><span style="color:#F6F6F4;">,</span><span style="color:#BF9EEE;">3</span><span style="color:#F6F6F4;">})</span></span>
<span class="line"><span style="color:#F6F6F4;"> fmt.</span><span style="color:#97E1F1;">Println</span><span style="color:#F6F6F4;">(l.</span><span style="color:#97E1F1;">Get</span><span style="color:#F6F6F4;">(</span><span style="color:#BF9EEE;">2</span><span style="color:#F6F6F4;">))</span></span>
<span class="line"><span style="color:#F6F6F4;">}</span></span></code></pre><pre class="shiki vitesse-light vp-code-light"><code><span class="line"><span style="color:#1E754F;">package</span><span style="color:#393A34;"> </span><span style="color:#59873A;">main</span></span>
<span class="line"></span>
<span class="line"><span style="color:#1E754F;">import</span><span style="color:#393A34;"> </span><span style="color:#999999;">(</span></span>
<span class="line"><span style="color:#393A34;"> </span><span style="color:#B5695999;">&quot;</span><span style="color:#59873A;">fmt</span><span style="color:#B5695999;">&quot;</span></span>
<span class="line"><span style="color:#393A34;"> </span><span style="color:#B5695999;">&quot;</span><span style="color:#59873A;">github.com/duke-git/lancet/datastructure/list</span><span style="color:#B5695999;">&quot;</span></span>
<span class="line"><span style="color:#999999;">)</span></span>
<span class="line"></span>
<span class="line"><span style="color:#1E754F;">func</span><span style="color:#393A34;"> </span><span style="color:#59873A;">main</span><span style="color:#999999;">()</span><span style="color:#393A34;"> </span><span style="color:#999999;">{</span></span>
<span class="line"><span style="color:#393A34;"> </span><span style="color:#B07D48;">l</span><span style="color:#393A34;"> </span><span style="color:#999999;">:=</span><span style="color:#393A34;"> list</span><span style="color:#999999;">.</span><span style="color:#998418;">NewCopyOnWriteList</span><span style="color:#999999;">([]</span><span style="color:#AB5959;">int</span><span style="color:#999999;">{</span><span style="color:#2F798A;">1</span><span style="color:#999999;">,</span><span style="color:#2F798A;">2</span><span style="color:#999999;">,</span><span style="color:#2F798A;">3</span><span style="color:#999999;">})</span></span>
<span class="line"><span style="color:#393A34;"> fmt</span><span style="color:#999999;">.</span><span style="color:#998418;">Println</span><span style="color:#999999;">(</span><span style="color:#393A34;">l</span><span style="color:#999999;">.</span><span style="color:#998418;">Get</span><span style="color:#999999;">(</span><span style="color:#2F798A;">2</span><span style="color:#999999;">))</span></span>
<span class="line"><span style="color:#999999;">}</span></span></code></pre></div><h3 id="Set" tabindex="-1">Set <a class="header-anchor" href="#Set" aria-label="Permalink to &quot;Set&quot;"></a></h3><p>将此列表中指定位置的元素替换为指定元素。</p><div class="language-go vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">go</span><pre class="shiki dracula-soft vp-code-dark"><code><span class="line"><span style="color:#F286C4;">func</span><span style="color:#F6F6F4;"> (c </span><span style="color:#F286C4;">*</span><span style="color:#F6F6F4;">CopyOnWriteList[T]) </span><span style="color:#62E884;">Set</span><span style="color:#F6F6F4;">(index </span><span style="color:#97E1F1;font-style:italic;">int</span><span style="color:#F6F6F4;">, e T) (oldValue </span><span style="color:#F286C4;">*</span><span style="color:#F6F6F4;">T, ok </span><span style="color:#97E1F1;font-style:italic;">bool</span><span style="color:#F6F6F4;">)</span></span></code></pre><pre class="shiki vitesse-light vp-code-light"><code><span class="line"><span style="color:#1E754F;">func</span><span style="color:#393A34;"> </span><span style="color:#999999;">(</span><span style="color:#393A34;">c </span><span style="color:#AB5959;">*</span><span style="color:#393A34;">CopyOnWriteList</span><span style="color:#999999;">[</span><span style="color:#393A34;">T</span><span style="color:#999999;">])</span><span style="color:#393A34;"> </span><span style="color:#59873A;">Set</span><span style="color:#999999;">(</span><span style="color:#393A34;">index </span><span style="color:#AB5959;">int</span><span style="color:#999999;">,</span><span style="color:#393A34;"> e T</span><span style="color:#999999;">)</span><span style="color:#393A34;"> </span><span style="color:#999999;">(</span><span style="color:#393A34;">oldValue </span><span style="color:#AB5959;">*</span><span style="color:#393A34;">T</span><span style="color:#999999;">,</span><span style="color:#393A34;"> ok </span><span style="color:#AB5959;">bool</span><span style="color:#999999;">)</span></span></code></pre></div><h4 id="示例-3" tabindex="-1">示例 <a class="header-anchor" href="#示例-3" aria-label="Permalink to &quot;示例&quot;"></a></h4><div class="language-go vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">go</span><pre class="shiki dracula-soft vp-code-dark"><code><span class="line"><span style="color:#F286C4;">package</span><span style="color:#F6F6F4;"> main</span></span>
<span class="line"></span>
<span class="line"><span style="color:#F286C4;">import</span><span style="color:#F6F6F4;"> (</span></span>
<span class="line"><span style="color:#F6F6F4;"> </span><span style="color:#DEE492;">&quot;</span><span style="color:#E7EE98;">fmt</span><span style="color:#DEE492;">&quot;</span></span>
<span class="line"><span style="color:#F6F6F4;"> </span><span style="color:#DEE492;">&quot;</span><span style="color:#E7EE98;">github.com/duke-git/lancet/datastructure/list</span><span style="color:#DEE492;">&quot;</span></span>
<span class="line"><span style="color:#F6F6F4;">)</span></span>
<span class="line"></span>
<span class="line"><span style="color:#F286C4;">func</span><span style="color:#F6F6F4;"> </span><span style="color:#62E884;">main</span><span style="color:#F6F6F4;">() {</span></span>
<span class="line"><span style="color:#F6F6F4;"> l </span><span style="color:#F286C4;">:=</span><span style="color:#F6F6F4;"> list.</span><span style="color:#97E1F1;">NewCopyOnWriteList</span><span style="color:#F6F6F4;">([]</span><span style="color:#97E1F1;font-style:italic;">int</span><span style="color:#F6F6F4;">{</span><span style="color:#BF9EEE;">1</span><span style="color:#F6F6F4;">,</span><span style="color:#BF9EEE;">2</span><span style="color:#F6F6F4;">,</span><span style="color:#BF9EEE;">3</span><span style="color:#F6F6F4;">})</span></span>
<span class="line"><span style="color:#F6F6F4;"> fmt.</span><span style="color:#97E1F1;">Println</span><span style="color:#F6F6F4;">(l.</span><span style="color:#97E1F1;">Set</span><span style="color:#F6F6F4;">(</span><span style="color:#BF9EEE;">2</span><span style="color:#F6F6F4;">, </span><span style="color:#BF9EEE;">4</span><span style="color:#F6F6F4;">))</span></span>
<span class="line"><span style="color:#F6F6F4;">}</span></span></code></pre><pre class="shiki vitesse-light vp-code-light"><code><span class="line"><span style="color:#1E754F;">package</span><span style="color:#393A34;"> </span><span style="color:#59873A;">main</span></span>
<span class="line"></span>
<span class="line"><span style="color:#1E754F;">import</span><span style="color:#393A34;"> </span><span style="color:#999999;">(</span></span>
<span class="line"><span style="color:#393A34;"> </span><span style="color:#B5695999;">&quot;</span><span style="color:#59873A;">fmt</span><span style="color:#B5695999;">&quot;</span></span>
<span class="line"><span style="color:#393A34;"> </span><span style="color:#B5695999;">&quot;</span><span style="color:#59873A;">github.com/duke-git/lancet/datastructure/list</span><span style="color:#B5695999;">&quot;</span></span>
<span class="line"><span style="color:#999999;">)</span></span>
<span class="line"></span>
<span class="line"><span style="color:#1E754F;">func</span><span style="color:#393A34;"> </span><span style="color:#59873A;">main</span><span style="color:#999999;">()</span><span style="color:#393A34;"> </span><span style="color:#999999;">{</span></span>
<span class="line"><span style="color:#393A34;"> </span><span style="color:#B07D48;">l</span><span style="color:#393A34;"> </span><span style="color:#999999;">:=</span><span style="color:#393A34;"> list</span><span style="color:#999999;">.</span><span style="color:#998418;">NewCopyOnWriteList</span><span style="color:#999999;">([]</span><span style="color:#AB5959;">int</span><span style="color:#999999;">{</span><span style="color:#2F798A;">1</span><span style="color:#999999;">,</span><span style="color:#2F798A;">2</span><span style="color:#999999;">,</span><span style="color:#2F798A;">3</span><span style="color:#999999;">})</span></span>
<span class="line"><span style="color:#393A34;"> fmt</span><span style="color:#999999;">.</span><span style="color:#998418;">Println</span><span style="color:#999999;">(</span><span style="color:#393A34;">l</span><span style="color:#999999;">.</span><span style="color:#998418;">Set</span><span style="color:#999999;">(</span><span style="color:#2F798A;">2</span><span style="color:#999999;">,</span><span style="color:#393A34;"> </span><span style="color:#2F798A;">4</span><span style="color:#999999;">))</span></span>
<span class="line"><span style="color:#999999;">}</span></span></code></pre></div><h3 id="Remove" tabindex="-1">Remove <a class="header-anchor" href="#Remove" aria-label="Permalink to &quot;Remove&quot;"></a></h3><h3 id="IndexOf" tabindex="-1">IndexOf <a class="header-anchor" href="#IndexOf" aria-label="Permalink to &quot;IndexOf&quot;"></a></h3><p>返回列表中值的索引,如果没有找到返回-1。</p><div class="language-go vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">go</span><pre class="shiki dracula-soft vp-code-dark"><code><span class="line"><span style="color:#F286C4;">func</span><span style="color:#F6F6F4;"> (c </span><span style="color:#F286C4;">*</span><span style="color:#F6F6F4;">CopyOnWriteList[T]) </span><span style="color:#62E884;">IndexOf</span><span style="color:#F6F6F4;">(e T) </span><span style="color:#97E1F1;font-style:italic;">int</span></span></code></pre><pre class="shiki vitesse-light vp-code-light"><code><span class="line"><span style="color:#1E754F;">func</span><span style="color:#393A34;"> </span><span style="color:#999999;">(</span><span style="color:#393A34;">c </span><span style="color:#AB5959;">*</span><span style="color:#393A34;">CopyOnWriteList</span><span style="color:#999999;">[</span><span style="color:#393A34;">T</span><span style="color:#999999;">])</span><span style="color:#393A34;"> </span><span style="color:#59873A;">IndexOf</span><span style="color:#999999;">(</span><span style="color:#393A34;">e T</span><span style="color:#999999;">)</span><span style="color:#393A34;"> </span><span style="color:#AB5959;">int</span></span></code></pre></div><h4 id="示例-4" tabindex="-1">示例 <a class="header-anchor" href="#示例-4" aria-label="Permalink to &quot;示例&quot;"></a></h4><div class="language-go vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">go</span><pre class="shiki dracula-soft vp-code-dark"><code><span class="line"><span style="color:#F286C4;">package</span><span style="color:#F6F6F4;"> main</span></span>
<span class="line"></span>
<span class="line"><span style="color:#F286C4;">import</span><span style="color:#F6F6F4;"> (</span></span>
<span class="line"><span style="color:#F6F6F4;"> </span><span style="color:#DEE492;">&quot;</span><span style="color:#E7EE98;">fmt</span><span style="color:#DEE492;">&quot;</span></span>
<span class="line"><span style="color:#F6F6F4;"> </span><span style="color:#DEE492;">&quot;</span><span style="color:#E7EE98;">github.com/duke-git/lancet/datastructure/list</span><span style="color:#DEE492;">&quot;</span></span>
<span class="line"><span style="color:#F6F6F4;">)</span></span>
<span class="line"></span>
<span class="line"><span style="color:#F286C4;">func</span><span style="color:#F6F6F4;"> </span><span style="color:#62E884;">main</span><span style="color:#F6F6F4;">() {</span></span>
<span class="line"><span style="color:#F6F6F4;"> l </span><span style="color:#F286C4;">:=</span><span style="color:#F6F6F4;"> list.</span><span style="color:#97E1F1;">NewCopyOnWriteList</span><span style="color:#F6F6F4;">([]</span><span style="color:#97E1F1;font-style:italic;">int</span><span style="color:#F6F6F4;">{</span><span style="color:#BF9EEE;">1</span><span style="color:#F6F6F4;">,</span><span style="color:#BF9EEE;">2</span><span style="color:#F6F6F4;">,</span><span style="color:#BF9EEE;">3</span><span style="color:#F6F6F4;">})</span></span>
<span class="line"><span style="color:#F6F6F4;"> fmt.</span><span style="color:#97E1F1;">Println</span><span style="color:#F6F6F4;">(l.</span><span style="color:#97E1F1;">IndexOf</span><span style="color:#F6F6F4;">(</span><span style="color:#BF9EEE;">1</span><span style="color:#F6F6F4;">))</span></span>
<span class="line"><span style="color:#F6F6F4;">}</span></span></code></pre><pre class="shiki vitesse-light vp-code-light"><code><span class="line"><span style="color:#1E754F;">package</span><span style="color:#393A34;"> </span><span style="color:#59873A;">main</span></span>
<span class="line"></span>
<span class="line"><span style="color:#1E754F;">import</span><span style="color:#393A34;"> </span><span style="color:#999999;">(</span></span>
<span class="line"><span style="color:#393A34;"> </span><span style="color:#B5695999;">&quot;</span><span style="color:#59873A;">fmt</span><span style="color:#B5695999;">&quot;</span></span>
<span class="line"><span style="color:#393A34;"> </span><span style="color:#B5695999;">&quot;</span><span style="color:#59873A;">github.com/duke-git/lancet/datastructure/list</span><span style="color:#B5695999;">&quot;</span></span>
<span class="line"><span style="color:#999999;">)</span></span>
<span class="line"></span>
<span class="line"><span style="color:#1E754F;">func</span><span style="color:#393A34;"> </span><span style="color:#59873A;">main</span><span style="color:#999999;">()</span><span style="color:#393A34;"> </span><span style="color:#999999;">{</span></span>
<span class="line"><span style="color:#393A34;"> </span><span style="color:#B07D48;">l</span><span style="color:#393A34;"> </span><span style="color:#999999;">:=</span><span style="color:#393A34;"> list</span><span style="color:#999999;">.</span><span style="color:#998418;">NewCopyOnWriteList</span><span style="color:#999999;">([]</span><span style="color:#AB5959;">int</span><span style="color:#999999;">{</span><span style="color:#2F798A;">1</span><span style="color:#999999;">,</span><span style="color:#2F798A;">2</span><span style="color:#999999;">,</span><span style="color:#2F798A;">3</span><span style="color:#999999;">})</span></span>
<span class="line"><span style="color:#393A34;"> fmt</span><span style="color:#999999;">.</span><span style="color:#998418;">Println</span><span style="color:#999999;">(</span><span style="color:#393A34;">l</span><span style="color:#999999;">.</span><span style="color:#998418;">IndexOf</span><span style="color:#999999;">(</span><span style="color:#2F798A;">1</span><span style="color:#999999;">))</span></span>
<span class="line"><span style="color:#999999;">}</span></span></code></pre></div><h3 id="LastIndexOf" tabindex="-1">LastIndexOf <a class="header-anchor" href="#LastIndexOf" aria-label="Permalink to &quot;LastIndexOf&quot;"></a></h3><p>返回指定元素在此列表中最后出现的索引,如果此列表不包含该元素,则返回-1。</p><div class="language-go vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">go</span><pre class="shiki dracula-soft vp-code-dark"><code><span class="line"><span style="color:#F286C4;">func</span><span style="color:#F6F6F4;"> (c </span><span style="color:#F286C4;">*</span><span style="color:#F6F6F4;">CopyOnWriteList[T]) </span><span style="color:#62E884;">LastIndexOf</span><span style="color:#F6F6F4;">(e T) </span><span style="color:#97E1F1;font-style:italic;">int</span></span></code></pre><pre class="shiki vitesse-light vp-code-light"><code><span class="line"><span style="color:#1E754F;">func</span><span style="color:#393A34;"> </span><span style="color:#999999;">(</span><span style="color:#393A34;">c </span><span style="color:#AB5959;">*</span><span style="color:#393A34;">CopyOnWriteList</span><span style="color:#999999;">[</span><span style="color:#393A34;">T</span><span style="color:#999999;">])</span><span style="color:#393A34;"> </span><span style="color:#59873A;">LastIndexOf</span><span style="color:#999999;">(</span><span style="color:#393A34;">e T</span><span style="color:#999999;">)</span><span style="color:#393A34;"> </span><span style="color:#AB5959;">int</span></span></code></pre></div><h4 id="示例-5" tabindex="-1">示例 <a class="header-anchor" href="#示例-5" aria-label="Permalink to &quot;示例&quot;"></a></h4><div class="language-go vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">go</span><pre class="shiki dracula-soft vp-code-dark"><code><span class="line"><span style="color:#F286C4;">package</span><span style="color:#F6F6F4;"> main</span></span>
<span class="line"></span>
<span class="line"><span style="color:#F286C4;">import</span><span style="color:#F6F6F4;"> (</span></span>
<span class="line"><span style="color:#F6F6F4;"> </span><span style="color:#DEE492;">&quot;</span><span style="color:#E7EE98;">fmt</span><span style="color:#DEE492;">&quot;</span></span>
<span class="line"><span style="color:#F6F6F4;"> </span><span style="color:#DEE492;">&quot;</span><span style="color:#E7EE98;">github.com/duke-git/lancet/datastructure/list</span><span style="color:#DEE492;">&quot;</span></span>
<span class="line"><span style="color:#F6F6F4;">)</span></span>
<span class="line"></span>
<span class="line"><span style="color:#F286C4;">func</span><span style="color:#F6F6F4;"> </span><span style="color:#62E884;">main</span><span style="color:#F6F6F4;">() {</span></span>
<span class="line"><span style="color:#F6F6F4;"> l </span><span style="color:#F286C4;">:=</span><span style="color:#F6F6F4;"> list.</span><span style="color:#97E1F1;">NewCopyOnWriteList</span><span style="color:#F6F6F4;">([]</span><span style="color:#97E1F1;font-style:italic;">int</span><span style="color:#F6F6F4;">{</span><span style="color:#BF9EEE;">1</span><span style="color:#F6F6F4;">,</span><span style="color:#BF9EEE;">2</span><span style="color:#F6F6F4;">,</span><span style="color:#BF9EEE;">3</span><span style="color:#F6F6F4;">,</span><span style="color:#BF9EEE;">1</span><span style="color:#F6F6F4;">})</span></span>
<span class="line"><span style="color:#F6F6F4;"> fmt.</span><span style="color:#97E1F1;">Println</span><span style="color:#F6F6F4;">(l.</span><span style="color:#97E1F1;">LastIndexOf</span><span style="color:#F6F6F4;">(</span><span style="color:#BF9EEE;">1</span><span style="color:#F6F6F4;">))</span></span>
<span class="line"><span style="color:#F6F6F4;">}</span></span></code></pre><pre class="shiki vitesse-light vp-code-light"><code><span class="line"><span style="color:#1E754F;">package</span><span style="color:#393A34;"> </span><span style="color:#59873A;">main</span></span>
<span class="line"></span>
<span class="line"><span style="color:#1E754F;">import</span><span style="color:#393A34;"> </span><span style="color:#999999;">(</span></span>
<span class="line"><span style="color:#393A34;"> </span><span style="color:#B5695999;">&quot;</span><span style="color:#59873A;">fmt</span><span style="color:#B5695999;">&quot;</span></span>
<span class="line"><span style="color:#393A34;"> </span><span style="color:#B5695999;">&quot;</span><span style="color:#59873A;">github.com/duke-git/lancet/datastructure/list</span><span style="color:#B5695999;">&quot;</span></span>
<span class="line"><span style="color:#999999;">)</span></span>
<span class="line"></span>
<span class="line"><span style="color:#1E754F;">func</span><span style="color:#393A34;"> </span><span style="color:#59873A;">main</span><span style="color:#999999;">()</span><span style="color:#393A34;"> </span><span style="color:#999999;">{</span></span>
<span class="line"><span style="color:#393A34;"> </span><span style="color:#B07D48;">l</span><span style="color:#393A34;"> </span><span style="color:#999999;">:=</span><span style="color:#393A34;"> list</span><span style="color:#999999;">.</span><span style="color:#998418;">NewCopyOnWriteList</span><span style="color:#999999;">([]</span><span style="color:#AB5959;">int</span><span style="color:#999999;">{</span><span style="color:#2F798A;">1</span><span style="color:#999999;">,</span><span style="color:#2F798A;">2</span><span style="color:#999999;">,</span><span style="color:#2F798A;">3</span><span style="color:#999999;">,</span><span style="color:#2F798A;">1</span><span style="color:#999999;">})</span></span>
<span class="line"><span style="color:#393A34;"> fmt</span><span style="color:#999999;">.</span><span style="color:#998418;">Println</span><span style="color:#999999;">(</span><span style="color:#393A34;">l</span><span style="color:#999999;">.</span><span style="color:#998418;">LastIndexOf</span><span style="color:#999999;">(</span><span style="color:#2F798A;">1</span><span style="color:#999999;">))</span></span>
<span class="line"><span style="color:#999999;">}</span></span></code></pre></div><h3 id="IsEmpty" tabindex="-1">IsEmpty <a class="header-anchor" href="#IsEmpty" aria-label="Permalink to &quot;IsEmpty&quot;"></a></h3><p>如果此列表不包含任何元素,则返回 true。</p><div class="language-go vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">go</span><pre class="shiki dracula-soft vp-code-dark"><code><span class="line"><span style="color:#F286C4;">func</span><span style="color:#F6F6F4;"> (c </span><span style="color:#F286C4;">*</span><span style="color:#F6F6F4;">CopyOnWriteList[T]) </span><span style="color:#62E884;">IsEmpty</span><span style="color:#F6F6F4;">() </span><span style="color:#97E1F1;font-style:italic;">bool</span></span></code></pre><pre class="shiki vitesse-light vp-code-light"><code><span class="line"><span style="color:#1E754F;">func</span><span style="color:#393A34;"> </span><span style="color:#999999;">(</span><span style="color:#393A34;">c </span><span style="color:#AB5959;">*</span><span style="color:#393A34;">CopyOnWriteList</span><span style="color:#999999;">[</span><span style="color:#393A34;">T</span><span style="color:#999999;">])</span><span style="color:#393A34;"> </span><span style="color:#59873A;">IsEmpty</span><span style="color:#999999;">()</span><span style="color:#393A34;"> </span><span style="color:#AB5959;">bool</span></span></code></pre></div><h4 id="示例-6" tabindex="-1">示例 <a class="header-anchor" href="#示例-6" aria-label="Permalink to &quot;示例&quot;"></a></h4><div class="language-go vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">go</span><pre class="shiki dracula-soft vp-code-dark"><code><span class="line"><span style="color:#F286C4;">package</span><span style="color:#F6F6F4;"> main</span></span>
<span class="line"></span>
<span class="line"><span style="color:#F286C4;">import</span><span style="color:#F6F6F4;"> (</span></span>
<span class="line"><span style="color:#F6F6F4;"> </span><span style="color:#DEE492;">&quot;</span><span style="color:#E7EE98;">fmt</span><span style="color:#DEE492;">&quot;</span></span>
<span class="line"><span style="color:#F6F6F4;"> </span><span style="color:#DEE492;">&quot;</span><span style="color:#E7EE98;">github.com/duke-git/lancet/datastructure/list</span><span style="color:#DEE492;">&quot;</span></span>
<span class="line"><span style="color:#F6F6F4;">)</span></span>
<span class="line"></span>
<span class="line"><span style="color:#F286C4;">func</span><span style="color:#F6F6F4;"> </span><span style="color:#62E884;">main</span><span style="color:#F6F6F4;">() {</span></span>
<span class="line"><span style="color:#F6F6F4;"> l </span><span style="color:#F286C4;">:=</span><span style="color:#F6F6F4;"> list.</span><span style="color:#97E1F1;">NewCopyOnWriteList</span><span style="color:#F6F6F4;">([]</span><span style="color:#97E1F1;font-style:italic;">int</span><span style="color:#F6F6F4;">{})</span></span>
<span class="line"><span style="color:#F6F6F4;"> fmt.</span><span style="color:#97E1F1;">Println</span><span style="color:#F6F6F4;">(l.</span><span style="color:#97E1F1;">IsEmpty</span><span style="color:#F6F6F4;">())</span></span>
<span class="line"><span style="color:#F6F6F4;">}</span></span></code></pre><pre class="shiki vitesse-light vp-code-light"><code><span class="line"><span style="color:#1E754F;">package</span><span style="color:#393A34;"> </span><span style="color:#59873A;">main</span></span>
<span class="line"></span>
<span class="line"><span style="color:#1E754F;">import</span><span style="color:#393A34;"> </span><span style="color:#999999;">(</span></span>
<span class="line"><span style="color:#393A34;"> </span><span style="color:#B5695999;">&quot;</span><span style="color:#59873A;">fmt</span><span style="color:#B5695999;">&quot;</span></span>
<span class="line"><span style="color:#393A34;"> </span><span style="color:#B5695999;">&quot;</span><span style="color:#59873A;">github.com/duke-git/lancet/datastructure/list</span><span style="color:#B5695999;">&quot;</span></span>
<span class="line"><span style="color:#999999;">)</span></span>
<span class="line"></span>
<span class="line"><span style="color:#1E754F;">func</span><span style="color:#393A34;"> </span><span style="color:#59873A;">main</span><span style="color:#999999;">()</span><span style="color:#393A34;"> </span><span style="color:#999999;">{</span></span>
<span class="line"><span style="color:#393A34;"> </span><span style="color:#B07D48;">l</span><span style="color:#393A34;"> </span><span style="color:#999999;">:=</span><span style="color:#393A34;"> list</span><span style="color:#999999;">.</span><span style="color:#998418;">NewCopyOnWriteList</span><span style="color:#999999;">([]</span><span style="color:#AB5959;">int</span><span style="color:#999999;">{})</span></span>
<span class="line"><span style="color:#393A34;"> fmt</span><span style="color:#999999;">.</span><span style="color:#998418;">Println</span><span style="color:#999999;">(</span><span style="color:#393A34;">l</span><span style="color:#999999;">.</span><span style="color:#998418;">IsEmpty</span><span style="color:#999999;">())</span></span>
<span class="line"><span style="color:#999999;">}</span></span></code></pre></div><h3 id="Contain" tabindex="-1">Contain <a class="header-anchor" href="#Contain" aria-label="Permalink to &quot;Contain&quot;"></a></h3><p>判断 CopyOnWriteList 是否包含某个元素</p><div class="language-go vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">go</span><pre class="shiki dracula-soft vp-code-dark"><code><span class="line"><span style="color:#F286C4;">func</span><span style="color:#F6F6F4;"> (c </span><span style="color:#F286C4;">*</span><span style="color:#F6F6F4;">CopyOnWriteList[T]) </span><span style="color:#62E884;">Contain</span><span style="color:#F6F6F4;">(e T) </span><span style="color:#97E1F1;font-style:italic;">bool</span></span></code></pre><pre class="shiki vitesse-light vp-code-light"><code><span class="line"><span style="color:#1E754F;">func</span><span style="color:#393A34;"> </span><span style="color:#999999;">(</span><span style="color:#393A34;">c </span><span style="color:#AB5959;">*</span><span style="color:#393A34;">CopyOnWriteList</span><span style="color:#999999;">[</span><span style="color:#393A34;">T</span><span style="color:#999999;">])</span><span style="color:#393A34;"> </span><span style="color:#59873A;">Contain</span><span style="color:#999999;">(</span><span style="color:#393A34;">e T</span><span style="color:#999999;">)</span><span style="color:#393A34;"> </span><span style="color:#AB5959;">bool</span></span></code></pre></div><h4 id="示例-7" tabindex="-1">示例 <a class="header-anchor" href="#示例-7" aria-label="Permalink to &quot;示例&quot;"></a></h4><div class="language-go vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">go</span><pre class="shiki dracula-soft vp-code-dark"><code><span class="line"><span style="color:#F286C4;">package</span><span style="color:#F6F6F4;"> main</span></span>
<span class="line"></span>
<span class="line"><span style="color:#F286C4;">import</span><span style="color:#F6F6F4;"> (</span></span>
<span class="line"><span style="color:#F6F6F4;"> </span><span style="color:#DEE492;">&quot;</span><span style="color:#E7EE98;">fmt</span><span style="color:#DEE492;">&quot;</span></span>
<span class="line"><span style="color:#F6F6F4;"> </span><span style="color:#DEE492;">&quot;</span><span style="color:#E7EE98;">github.com/duke-git/lancet/datastructure/list</span><span style="color:#DEE492;">&quot;</span></span>
<span class="line"><span style="color:#F6F6F4;">)</span></span>
<span class="line"></span>
<span class="line"><span style="color:#F286C4;">func</span><span style="color:#F6F6F4;"> </span><span style="color:#62E884;">main</span><span style="color:#F6F6F4;">() {</span></span>
<span class="line"><span style="color:#F6F6F4;"> l </span><span style="color:#F286C4;">:=</span><span style="color:#F6F6F4;"> list.</span><span style="color:#97E1F1;">NewCopyOnWriteList</span><span style="color:#F6F6F4;">([]</span><span style="color:#97E1F1;font-style:italic;">int</span><span style="color:#F6F6F4;">{</span><span style="color:#BF9EEE;">1</span><span style="color:#F6F6F4;">,</span><span style="color:#BF9EEE;">2</span><span style="color:#F6F6F4;">,</span><span style="color:#BF9EEE;">3</span><span style="color:#F6F6F4;">})</span></span>
<span class="line"><span style="color:#F6F6F4;"> fmt.</span><span style="color:#97E1F1;">Println</span><span style="color:#F6F6F4;">(l.</span><span style="color:#97E1F1;">Contain</span><span style="color:#F6F6F4;">(</span><span style="color:#BF9EEE;">1</span><span style="color:#F6F6F4;">))</span></span>
<span class="line"><span style="color:#F6F6F4;">}</span></span></code></pre><pre class="shiki vitesse-light vp-code-light"><code><span class="line"><span style="color:#1E754F;">package</span><span style="color:#393A34;"> </span><span style="color:#59873A;">main</span></span>
<span class="line"></span>
<span class="line"><span style="color:#1E754F;">import</span><span style="color:#393A34;"> </span><span style="color:#999999;">(</span></span>
<span class="line"><span style="color:#393A34;"> </span><span style="color:#B5695999;">&quot;</span><span style="color:#59873A;">fmt</span><span style="color:#B5695999;">&quot;</span></span>
<span class="line"><span style="color:#393A34;"> </span><span style="color:#B5695999;">&quot;</span><span style="color:#59873A;">github.com/duke-git/lancet/datastructure/list</span><span style="color:#B5695999;">&quot;</span></span>
<span class="line"><span style="color:#999999;">)</span></span>
<span class="line"></span>
<span class="line"><span style="color:#1E754F;">func</span><span style="color:#393A34;"> </span><span style="color:#59873A;">main</span><span style="color:#999999;">()</span><span style="color:#393A34;"> </span><span style="color:#999999;">{</span></span>
<span class="line"><span style="color:#393A34;"> </span><span style="color:#B07D48;">l</span><span style="color:#393A34;"> </span><span style="color:#999999;">:=</span><span style="color:#393A34;"> list</span><span style="color:#999999;">.</span><span style="color:#998418;">NewCopyOnWriteList</span><span style="color:#999999;">([]</span><span style="color:#AB5959;">int</span><span style="color:#999999;">{</span><span style="color:#2F798A;">1</span><span style="color:#999999;">,</span><span style="color:#2F798A;">2</span><span style="color:#999999;">,</span><span style="color:#2F798A;">3</span><span style="color:#999999;">})</span></span>
<span class="line"><span style="color:#393A34;"> fmt</span><span style="color:#999999;">.</span><span style="color:#998418;">Println</span><span style="color:#999999;">(</span><span style="color:#393A34;">l</span><span style="color:#999999;">.</span><span style="color:#998418;">Contain</span><span style="color:#999999;">(</span><span style="color:#2F798A;">1</span><span style="color:#999999;">))</span></span>
<span class="line"><span style="color:#999999;">}</span></span></code></pre></div><h3 id="ValueOf" tabindex="-1">ValueOf <a class="header-anchor" href="#ValueOf" aria-label="Permalink to &quot;ValueOf&quot;"></a></h3><p>返回列表中索引处的值指针</p><div class="language-go vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">go</span><pre class="shiki dracula-soft vp-code-dark"><code><span class="line"><span style="color:#F286C4;">func</span><span style="color:#F6F6F4;"> (c </span><span style="color:#F286C4;">*</span><span style="color:#F6F6F4;">CopyOnWriteList[T]) </span><span style="color:#62E884;">ValueOf</span><span style="color:#F6F6F4;">(index </span><span style="color:#97E1F1;font-style:italic;">int</span><span style="color:#F6F6F4;">) []T</span></span></code></pre><pre class="shiki vitesse-light vp-code-light"><code><span class="line"><span style="color:#1E754F;">func</span><span style="color:#393A34;"> </span><span style="color:#999999;">(</span><span style="color:#393A34;">c </span><span style="color:#AB5959;">*</span><span style="color:#393A34;">CopyOnWriteList</span><span style="color:#999999;">[</span><span style="color:#393A34;">T</span><span style="color:#999999;">])</span><span style="color:#393A34;"> </span><span style="color:#59873A;">ValueOf</span><span style="color:#999999;">(</span><span style="color:#393A34;">index </span><span style="color:#AB5959;">int</span><span style="color:#999999;">)</span><span style="color:#393A34;"> </span><span style="color:#999999;">[]</span><span style="color:#393A34;">T</span></span></code></pre></div><h4 id="示例-8" tabindex="-1">示例 <a class="header-anchor" href="#示例-8" aria-label="Permalink to &quot;示例&quot;"></a></h4><div class="language-go vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">go</span><pre class="shiki dracula-soft vp-code-dark"><code><span class="line"><span style="color:#F286C4;">package</span><span style="color:#F6F6F4;"> main</span></span>
<span class="line"></span>
<span class="line"><span style="color:#F286C4;">import</span><span style="color:#F6F6F4;"> (</span></span>
<span class="line"><span style="color:#F6F6F4;"> </span><span style="color:#DEE492;">&quot;</span><span style="color:#E7EE98;">fmt</span><span style="color:#DEE492;">&quot;</span></span>
<span class="line"><span style="color:#F6F6F4;"> </span><span style="color:#DEE492;">&quot;</span><span style="color:#E7EE98;">github.com/duke-git/lancet/datastructure/list</span><span style="color:#DEE492;">&quot;</span></span>
<span class="line"><span style="color:#F6F6F4;">)</span></span>
<span class="line"></span>
<span class="line"><span style="color:#F286C4;">func</span><span style="color:#F6F6F4;"> </span><span style="color:#62E884;">main</span><span style="color:#F6F6F4;">() {</span></span>
<span class="line"><span style="color:#F6F6F4;"> l </span><span style="color:#F286C4;">:=</span><span style="color:#F6F6F4;"> list.</span><span style="color:#97E1F1;">NewCopyOnWriteList</span><span style="color:#F6F6F4;">([]</span><span style="color:#97E1F1;font-style:italic;">int</span><span style="color:#F6F6F4;">{</span><span style="color:#BF9EEE;">1</span><span style="color:#F6F6F4;">,</span><span style="color:#BF9EEE;">2</span><span style="color:#F6F6F4;">,</span><span style="color:#BF9EEE;">3</span><span style="color:#F6F6F4;">})</span></span>
<span class="line"><span style="color:#F6F6F4;"> fmt.</span><span style="color:#97E1F1;">Println</span><span style="color:#F6F6F4;">(l.</span><span style="color:#97E1F1;">ValueOf</span><span style="color:#F6F6F4;">(</span><span style="color:#BF9EEE;">2</span><span style="color:#F6F6F4;">))</span></span>
<span class="line"><span style="color:#F6F6F4;">}</span></span></code></pre><pre class="shiki vitesse-light vp-code-light"><code><span class="line"><span style="color:#1E754F;">package</span><span style="color:#393A34;"> </span><span style="color:#59873A;">main</span></span>
<span class="line"></span>
<span class="line"><span style="color:#1E754F;">import</span><span style="color:#393A34;"> </span><span style="color:#999999;">(</span></span>
<span class="line"><span style="color:#393A34;"> </span><span style="color:#B5695999;">&quot;</span><span style="color:#59873A;">fmt</span><span style="color:#B5695999;">&quot;</span></span>
<span class="line"><span style="color:#393A34;"> </span><span style="color:#B5695999;">&quot;</span><span style="color:#59873A;">github.com/duke-git/lancet/datastructure/list</span><span style="color:#B5695999;">&quot;</span></span>
<span class="line"><span style="color:#999999;">)</span></span>
<span class="line"></span>
<span class="line"><span style="color:#1E754F;">func</span><span style="color:#393A34;"> </span><span style="color:#59873A;">main</span><span style="color:#999999;">()</span><span style="color:#393A34;"> </span><span style="color:#999999;">{</span></span>
<span class="line"><span style="color:#393A34;"> </span><span style="color:#B07D48;">l</span><span style="color:#393A34;"> </span><span style="color:#999999;">:=</span><span style="color:#393A34;"> list</span><span style="color:#999999;">.</span><span style="color:#998418;">NewCopyOnWriteList</span><span style="color:#999999;">([]</span><span style="color:#AB5959;">int</span><span style="color:#999999;">{</span><span style="color:#2F798A;">1</span><span style="color:#999999;">,</span><span style="color:#2F798A;">2</span><span style="color:#999999;">,</span><span style="color:#2F798A;">3</span><span style="color:#999999;">})</span></span>
<span class="line"><span style="color:#393A34;"> fmt</span><span style="color:#999999;">.</span><span style="color:#998418;">Println</span><span style="color:#999999;">(</span><span style="color:#393A34;">l</span><span style="color:#999999;">.</span><span style="color:#998418;">ValueOf</span><span style="color:#999999;">(</span><span style="color:#2F798A;">2</span><span style="color:#999999;">))</span></span>
<span class="line"><span style="color:#999999;">}</span></span></code></pre></div><h3 id="Add" tabindex="-1">Add <a class="header-anchor" href="#Add" aria-label="Permalink to &quot;Add&quot;"></a></h3><p>将指定的元素追加到此列表的末尾。</p><div class="language-go vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">go</span><pre class="shiki dracula-soft vp-code-dark"><code><span class="line"><span style="color:#F286C4;">func</span><span style="color:#F6F6F4;"> (c </span><span style="color:#F286C4;">*</span><span style="color:#F6F6F4;">CopyOnWriteList[T]) </span><span style="color:#62E884;">Add</span><span style="color:#F6F6F4;">(e T) </span><span style="color:#97E1F1;font-style:italic;">bool</span></span></code></pre><pre class="shiki vitesse-light vp-code-light"><code><span class="line"><span style="color:#1E754F;">func</span><span style="color:#393A34;"> </span><span style="color:#999999;">(</span><span style="color:#393A34;">c </span><span style="color:#AB5959;">*</span><span style="color:#393A34;">CopyOnWriteList</span><span style="color:#999999;">[</span><span style="color:#393A34;">T</span><span style="color:#999999;">])</span><span style="color:#393A34;"> </span><span style="color:#59873A;">Add</span><span style="color:#999999;">(</span><span style="color:#393A34;">e T</span><span style="color:#999999;">)</span><span style="color:#393A34;"> </span><span style="color:#AB5959;">bool</span></span></code></pre></div><h4 id="示例-9" tabindex="-1">示例 <a class="header-anchor" href="#示例-9" aria-label="Permalink to &quot;示例&quot;"></a></h4><div class="language-go vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">go</span><pre class="shiki dracula-soft vp-code-dark"><code><span class="line"><span style="color:#F286C4;">package</span><span style="color:#F6F6F4;"> main</span></span>
<span class="line"></span>
<span class="line"><span style="color:#F286C4;">import</span><span style="color:#F6F6F4;"> (</span></span>
<span class="line"><span style="color:#F6F6F4;"> </span><span style="color:#DEE492;">&quot;</span><span style="color:#E7EE98;">fmt</span><span style="color:#DEE492;">&quot;</span></span>
<span class="line"><span style="color:#F6F6F4;"> </span><span style="color:#DEE492;">&quot;</span><span style="color:#E7EE98;">github.com/duke-git/lancet/datastructure/list</span><span style="color:#DEE492;">&quot;</span></span>
<span class="line"><span style="color:#F6F6F4;">)</span></span>
<span class="line"></span>
<span class="line"><span style="color:#F286C4;">func</span><span style="color:#F6F6F4;"> </span><span style="color:#62E884;">main</span><span style="color:#F6F6F4;">() {</span></span>
<span class="line"><span style="color:#F6F6F4;"> l </span><span style="color:#F286C4;">:=</span><span style="color:#F6F6F4;"> list.</span><span style="color:#97E1F1;">NewCopyOnWriteList</span><span style="color:#F6F6F4;">([]</span><span style="color:#97E1F1;font-style:italic;">int</span><span style="color:#F6F6F4;">{</span><span style="color:#BF9EEE;">1</span><span style="color:#F6F6F4;">,</span><span style="color:#BF9EEE;">2</span><span style="color:#F6F6F4;">,</span><span style="color:#BF9EEE;">3</span><span style="color:#F6F6F4;">})</span></span>
<span class="line"><span style="color:#F6F6F4;"> l.</span><span style="color:#97E1F1;">Add</span><span style="color:#F6F6F4;">(</span><span style="color:#BF9EEE;">4</span><span style="color:#F6F6F4;">)</span></span>
<span class="line"><span style="color:#F6F6F4;"> fmt.</span><span style="color:#97E1F1;">Println</span><span style="color:#F6F6F4;">(l.</span><span style="color:#97E1F1;">getList</span><span style="color:#F6F6F4;">())</span></span>
<span class="line"><span style="color:#F6F6F4;">}</span></span></code></pre><pre class="shiki vitesse-light vp-code-light"><code><span class="line"><span style="color:#1E754F;">package</span><span style="color:#393A34;"> </span><span style="color:#59873A;">main</span></span>
<span class="line"></span>
<span class="line"><span style="color:#1E754F;">import</span><span style="color:#393A34;"> </span><span style="color:#999999;">(</span></span>
<span class="line"><span style="color:#393A34;"> </span><span style="color:#B5695999;">&quot;</span><span style="color:#59873A;">fmt</span><span style="color:#B5695999;">&quot;</span></span>
<span class="line"><span style="color:#393A34;"> </span><span style="color:#B5695999;">&quot;</span><span style="color:#59873A;">github.com/duke-git/lancet/datastructure/list</span><span style="color:#B5695999;">&quot;</span></span>
<span class="line"><span style="color:#999999;">)</span></span>
<span class="line"></span>
<span class="line"><span style="color:#1E754F;">func</span><span style="color:#393A34;"> </span><span style="color:#59873A;">main</span><span style="color:#999999;">()</span><span style="color:#393A34;"> </span><span style="color:#999999;">{</span></span>
<span class="line"><span style="color:#393A34;"> </span><span style="color:#B07D48;">l</span><span style="color:#393A34;"> </span><span style="color:#999999;">:=</span><span style="color:#393A34;"> list</span><span style="color:#999999;">.</span><span style="color:#998418;">NewCopyOnWriteList</span><span style="color:#999999;">([]</span><span style="color:#AB5959;">int</span><span style="color:#999999;">{</span><span style="color:#2F798A;">1</span><span style="color:#999999;">,</span><span style="color:#2F798A;">2</span><span style="color:#999999;">,</span><span style="color:#2F798A;">3</span><span style="color:#999999;">})</span></span>
<span class="line"><span style="color:#393A34;"> l</span><span style="color:#999999;">.</span><span style="color:#998418;">Add</span><span style="color:#999999;">(</span><span style="color:#2F798A;">4</span><span style="color:#999999;">)</span></span>
<span class="line"><span style="color:#393A34;"> fmt</span><span style="color:#999999;">.</span><span style="color:#998418;">Println</span><span style="color:#999999;">(</span><span style="color:#393A34;">l</span><span style="color:#999999;">.</span><span style="color:#998418;">getList</span><span style="color:#999999;">())</span></span>
<span class="line"><span style="color:#999999;">}</span></span></code></pre></div><h3 id="AddAll" tabindex="-1">AddAll <a class="header-anchor" href="#AddAll" aria-label="Permalink to &quot;AddAll&quot;"></a></h3><p>将指定集合中的所有元素追加到此列表的末尾</p><div class="language-go vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">go</span><pre class="shiki dracula-soft vp-code-dark"><code><span class="line"><span style="color:#F286C4;">func</span><span style="color:#F6F6F4;"> (c </span><span style="color:#F286C4;">*</span><span style="color:#F6F6F4;">CopyOnWriteList[T]) </span><span style="color:#62E884;">AddAll</span><span style="color:#F6F6F4;">(e []T) </span><span style="color:#97E1F1;font-style:italic;">bool</span></span></code></pre><pre class="shiki vitesse-light vp-code-light"><code><span class="line"><span style="color:#1E754F;">func</span><span style="color:#393A34;"> </span><span style="color:#999999;">(</span><span style="color:#393A34;">c </span><span style="color:#AB5959;">*</span><span style="color:#393A34;">CopyOnWriteList</span><span style="color:#999999;">[</span><span style="color:#393A34;">T</span><span style="color:#999999;">])</span><span style="color:#393A34;"> </span><span style="color:#59873A;">AddAll</span><span style="color:#999999;">(</span><span style="color:#393A34;">e </span><span style="color:#999999;">[]</span><span style="color:#393A34;">T</span><span style="color:#999999;">)</span><span style="color:#393A34;"> </span><span style="color:#AB5959;">bool</span></span></code></pre></div><h4 id="示例-10" tabindex="-1">示例 <a class="header-anchor" href="#示例-10" aria-label="Permalink to &quot;示例&quot;"></a></h4><div class="language-go vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">go</span><pre class="shiki dracula-soft vp-code-dark"><code><span class="line"><span style="color:#F286C4;">package</span><span style="color:#F6F6F4;"> main</span></span>
<span class="line"></span>
<span class="line"><span style="color:#F286C4;">import</span><span style="color:#F6F6F4;"> (</span></span>
<span class="line"><span style="color:#F6F6F4;"> </span><span style="color:#DEE492;">&quot;</span><span style="color:#E7EE98;">fmt</span><span style="color:#DEE492;">&quot;</span></span>
<span class="line"><span style="color:#F6F6F4;"> </span><span style="color:#DEE492;">&quot;</span><span style="color:#E7EE98;">github.com/duke-git/lancet/datastructure/list</span><span style="color:#DEE492;">&quot;</span></span>
<span class="line"><span style="color:#F6F6F4;">)</span></span>
<span class="line"></span>
<span class="line"><span style="color:#F286C4;">func</span><span style="color:#F6F6F4;"> </span><span style="color:#62E884;">main</span><span style="color:#F6F6F4;">() {</span></span>
<span class="line"><span style="color:#F6F6F4;"> l </span><span style="color:#F286C4;">:=</span><span style="color:#F6F6F4;"> list.</span><span style="color:#97E1F1;">NewCopyOnWriteList</span><span style="color:#F6F6F4;">([]</span><span style="color:#97E1F1;font-style:italic;">int</span><span style="color:#F6F6F4;">{</span><span style="color:#BF9EEE;">1</span><span style="color:#F6F6F4;">,</span><span style="color:#BF9EEE;">2</span><span style="color:#F6F6F4;">,</span><span style="color:#BF9EEE;">3</span><span style="color:#F6F6F4;">})</span></span>
<span class="line"><span style="color:#F6F6F4;"> l.</span><span style="color:#97E1F1;">AddAll</span><span style="color:#F6F6F4;">([]</span><span style="color:#97E1F1;font-style:italic;">int</span><span style="color:#F6F6F4;">{</span><span style="color:#BF9EEE;">4</span><span style="color:#F6F6F4;">,</span><span style="color:#BF9EEE;">5</span><span style="color:#F6F6F4;">,</span><span style="color:#BF9EEE;">6</span><span style="color:#F6F6F4;">})</span></span>
<span class="line"><span style="color:#F6F6F4;"> fmt.</span><span style="color:#97E1F1;">Println</span><span style="color:#F6F6F4;">(l.</span><span style="color:#97E1F1;">getList</span><span style="color:#F6F6F4;">())</span></span>
<span class="line"><span style="color:#F6F6F4;">}</span></span></code></pre><pre class="shiki vitesse-light vp-code-light"><code><span class="line"><span style="color:#1E754F;">package</span><span style="color:#393A34;"> </span><span style="color:#59873A;">main</span></span>
<span class="line"></span>
<span class="line"><span style="color:#1E754F;">import</span><span style="color:#393A34;"> </span><span style="color:#999999;">(</span></span>
<span class="line"><span style="color:#393A34;"> </span><span style="color:#B5695999;">&quot;</span><span style="color:#59873A;">fmt</span><span style="color:#B5695999;">&quot;</span></span>
<span class="line"><span style="color:#393A34;"> </span><span style="color:#B5695999;">&quot;</span><span style="color:#59873A;">github.com/duke-git/lancet/datastructure/list</span><span style="color:#B5695999;">&quot;</span></span>
<span class="line"><span style="color:#999999;">)</span></span>
<span class="line"></span>
<span class="line"><span style="color:#1E754F;">func</span><span style="color:#393A34;"> </span><span style="color:#59873A;">main</span><span style="color:#999999;">()</span><span style="color:#393A34;"> </span><span style="color:#999999;">{</span></span>
<span class="line"><span style="color:#393A34;"> </span><span style="color:#B07D48;">l</span><span style="color:#393A34;"> </span><span style="color:#999999;">:=</span><span style="color:#393A34;"> list</span><span style="color:#999999;">.</span><span style="color:#998418;">NewCopyOnWriteList</span><span style="color:#999999;">([]</span><span style="color:#AB5959;">int</span><span style="color:#999999;">{</span><span style="color:#2F798A;">1</span><span style="color:#999999;">,</span><span style="color:#2F798A;">2</span><span style="color:#999999;">,</span><span style="color:#2F798A;">3</span><span style="color:#999999;">})</span></span>
<span class="line"><span style="color:#393A34;"> l</span><span style="color:#999999;">.</span><span style="color:#998418;">AddAll</span><span style="color:#999999;">([]</span><span style="color:#AB5959;">int</span><span style="color:#999999;">{</span><span style="color:#2F798A;">4</span><span style="color:#999999;">,</span><span style="color:#2F798A;">5</span><span style="color:#999999;">,</span><span style="color:#2F798A;">6</span><span style="color:#999999;">})</span></span>
<span class="line"><span style="color:#393A34;"> fmt</span><span style="color:#999999;">.</span><span style="color:#998418;">Println</span><span style="color:#999999;">(</span><span style="color:#393A34;">l</span><span style="color:#999999;">.</span><span style="color:#998418;">getList</span><span style="color:#999999;">())</span></span>
<span class="line"><span style="color:#999999;">}</span></span></code></pre></div><h3 id="AddByIndex" tabindex="-1">AddByIndex <a class="header-anchor" href="#AddByIndex" aria-label="Permalink to &quot;AddByIndex&quot;"></a></h3><p>将指定元素插入此列表中的指定位置。</p><div class="language-go vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">go</span><pre class="shiki dracula-soft vp-code-dark"><code><span class="line"><span style="color:#F286C4;">func</span><span style="color:#F6F6F4;"> (c </span><span style="color:#F286C4;">*</span><span style="color:#F6F6F4;">CopyOnWriteList[T]) </span><span style="color:#62E884;">AddByIndex</span><span style="color:#F6F6F4;">(index </span><span style="color:#97E1F1;font-style:italic;">int</span><span style="color:#F6F6F4;">, e T) </span><span style="color:#97E1F1;font-style:italic;">bool</span></span></code></pre><pre class="shiki vitesse-light vp-code-light"><code><span class="line"><span style="color:#1E754F;">func</span><span style="color:#393A34;"> </span><span style="color:#999999;">(</span><span style="color:#393A34;">c </span><span style="color:#AB5959;">*</span><span style="color:#393A34;">CopyOnWriteList</span><span style="color:#999999;">[</span><span style="color:#393A34;">T</span><span style="color:#999999;">])</span><span style="color:#393A34;"> </span><span style="color:#59873A;">AddByIndex</span><span style="color:#999999;">(</span><span style="color:#393A34;">index </span><span style="color:#AB5959;">int</span><span style="color:#999999;">,</span><span style="color:#393A34;"> e T</span><span style="color:#999999;">)</span><span style="color:#393A34;"> </span><span style="color:#AB5959;">bool</span></span></code></pre></div><h4 id="示例-11" tabindex="-1">示例 <a class="header-anchor" href="#示例-11" aria-label="Permalink to &quot;示例&quot;"></a></h4><div class="language-go vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">go</span><pre class="shiki dracula-soft vp-code-dark"><code><span class="line"><span style="color:#F286C4;">package</span><span style="color:#F6F6F4;"> main</span></span>
<span class="line"><span style="color:#F286C4;">import</span><span style="color:#F6F6F4;"> (</span></span>
<span class="line"><span style="color:#F6F6F4;"> </span><span style="color:#DEE492;">&quot;</span><span style="color:#E7EE98;">fmt</span><span style="color:#DEE492;">&quot;</span></span>
<span class="line"><span style="color:#F6F6F4;"> </span><span style="color:#DEE492;">&quot;</span><span style="color:#E7EE98;">github.com/duke-git/lancet/datastructure/list</span><span style="color:#DEE492;">&quot;</span></span>
<span class="line"><span style="color:#F6F6F4;">)</span></span>
<span class="line"><span style="color:#F286C4;">func</span><span style="color:#F6F6F4;"> </span><span style="color:#62E884;">main</span><span style="color:#F6F6F4;">() {</span></span>
<span class="line"><span style="color:#F6F6F4;"> l </span><span style="color:#F286C4;">:=</span><span style="color:#F6F6F4;"> list.</span><span style="color:#97E1F1;">NewCopyOnWriteList</span><span style="color:#F6F6F4;">([]</span><span style="color:#97E1F1;font-style:italic;">int</span><span style="color:#F6F6F4;">{</span><span style="color:#BF9EEE;">1</span><span style="color:#F6F6F4;">,</span><span style="color:#BF9EEE;">2</span><span style="color:#F6F6F4;">,</span><span style="color:#BF9EEE;">3</span><span style="color:#F6F6F4;">})</span></span>
<span class="line"><span style="color:#F6F6F4;"> list.</span><span style="color:#97E1F1;">AddByIndex</span><span style="color:#F6F6F4;">(</span><span style="color:#BF9EEE;">2</span><span style="color:#F6F6F4;">, </span><span style="color:#BF9EEE;">6</span><span style="color:#F6F6F4;">)</span></span>
<span class="line"><span style="color:#F6F6F4;"> fmt.</span><span style="color:#97E1F1;">Println</span><span style="color:#F6F6F4;">(l.</span><span style="color:#97E1F1;">getList</span><span style="color:#F6F6F4;">())</span></span>
<span class="line"><span style="color:#F6F6F4;">}</span></span></code></pre><pre class="shiki vitesse-light vp-code-light"><code><span class="line"><span style="color:#1E754F;">package</span><span style="color:#393A34;"> </span><span style="color:#59873A;">main</span></span>
<span class="line"><span style="color:#1E754F;">import</span><span style="color:#393A34;"> </span><span style="color:#999999;">(</span></span>
<span class="line"><span style="color:#393A34;"> </span><span style="color:#B5695999;">&quot;</span><span style="color:#59873A;">fmt</span><span style="color:#B5695999;">&quot;</span></span>
<span class="line"><span style="color:#393A34;"> </span><span style="color:#B5695999;">&quot;</span><span style="color:#59873A;">github.com/duke-git/lancet/datastructure/list</span><span style="color:#B5695999;">&quot;</span></span>
<span class="line"><span style="color:#999999;">)</span></span>
<span class="line"><span style="color:#1E754F;">func</span><span style="color:#393A34;"> </span><span style="color:#59873A;">main</span><span style="color:#999999;">()</span><span style="color:#393A34;"> </span><span style="color:#999999;">{</span></span>
<span class="line"><span style="color:#393A34;"> </span><span style="color:#B07D48;">l</span><span style="color:#393A34;"> </span><span style="color:#999999;">:=</span><span style="color:#393A34;"> list</span><span style="color:#999999;">.</span><span style="color:#998418;">NewCopyOnWriteList</span><span style="color:#999999;">([]</span><span style="color:#AB5959;">int</span><span style="color:#999999;">{</span><span style="color:#2F798A;">1</span><span style="color:#999999;">,</span><span style="color:#2F798A;">2</span><span style="color:#999999;">,</span><span style="color:#2F798A;">3</span><span style="color:#999999;">})</span></span>
<span class="line"><span style="color:#393A34;"> list</span><span style="color:#999999;">.</span><span style="color:#998418;">AddByIndex</span><span style="color:#999999;">(</span><span style="color:#2F798A;">2</span><span style="color:#999999;">,</span><span style="color:#393A34;"> </span><span style="color:#2F798A;">6</span><span style="color:#999999;">)</span></span>
<span class="line"><span style="color:#393A34;"> fmt</span><span style="color:#999999;">.</span><span style="color:#998418;">Println</span><span style="color:#999999;">(</span><span style="color:#393A34;">l</span><span style="color:#999999;">.</span><span style="color:#998418;">getList</span><span style="color:#999999;">())</span></span>
<span class="line"><span style="color:#999999;">}</span></span></code></pre></div><h3 id="DeleteAt" tabindex="-1">DeleteAt <a class="header-anchor" href="#DeleteAt" aria-label="Permalink to &quot;DeleteAt&quot;"></a></h3><p>移除此列表中指定位置的元素。</p><div class="language-go vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">go</span><pre class="shiki dracula-soft vp-code-dark"><code><span class="line"><span style="color:#F286C4;">func</span><span style="color:#F6F6F4;"> (c </span><span style="color:#F286C4;">*</span><span style="color:#F6F6F4;">CopyOnWriteList[T]) </span><span style="color:#62E884;">DeleteAt</span><span style="color:#F6F6F4;">(index </span><span style="color:#97E1F1;font-style:italic;">int</span><span style="color:#F6F6F4;">) (oldValue </span><span style="color:#F286C4;">*</span><span style="color:#F6F6F4;">T, ok </span><span style="color:#97E1F1;font-style:italic;">bool</span><span style="color:#F6F6F4;">)</span></span></code></pre><pre class="shiki vitesse-light vp-code-light"><code><span class="line"><span style="color:#1E754F;">func</span><span style="color:#393A34;"> </span><span style="color:#999999;">(</span><span style="color:#393A34;">c </span><span style="color:#AB5959;">*</span><span style="color:#393A34;">CopyOnWriteList</span><span style="color:#999999;">[</span><span style="color:#393A34;">T</span><span style="color:#999999;">])</span><span style="color:#393A34;"> </span><span style="color:#59873A;">DeleteAt</span><span style="color:#999999;">(</span><span style="color:#393A34;">index </span><span style="color:#AB5959;">int</span><span style="color:#999999;">)</span><span style="color:#393A34;"> </span><span style="color:#999999;">(</span><span style="color:#393A34;">oldValue </span><span style="color:#AB5959;">*</span><span style="color:#393A34;">T</span><span style="color:#999999;">,</span><span style="color:#393A34;"> ok </span><span style="color:#AB5959;">bool</span><span style="color:#999999;">)</span></span></code></pre></div><h4 id="示例-12" tabindex="-1">示例 <a class="header-anchor" href="#示例-12" aria-label="Permalink to &quot;示例&quot;"></a></h4><div class="language-go vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">go</span><pre class="shiki dracula-soft vp-code-dark"><code><span class="line"><span style="color:#F286C4;">package</span><span style="color:#F6F6F4;"> main</span></span>
<span class="line"><span style="color:#F286C4;">import</span><span style="color:#F6F6F4;"> (</span></span>
<span class="line"><span style="color:#F6F6F4;"> </span><span style="color:#DEE492;">&quot;</span><span style="color:#E7EE98;">fmt</span><span style="color:#DEE492;">&quot;</span></span>
<span class="line"><span style="color:#F6F6F4;"> </span><span style="color:#DEE492;">&quot;</span><span style="color:#E7EE98;">github.com/duke-git/lancet/datastructure/list</span><span style="color:#DEE492;">&quot;</span></span>
<span class="line"><span style="color:#F6F6F4;">)</span></span>
<span class="line"></span>
<span class="line"><span style="color:#F286C4;">func</span><span style="color:#F6F6F4;"> </span><span style="color:#62E884;">main</span><span style="color:#F6F6F4;">() {</span></span>
<span class="line"><span style="color:#F6F6F4;"> l </span><span style="color:#F286C4;">:=</span><span style="color:#F6F6F4;"> list.</span><span style="color:#97E1F1;">NewCopyOnWriteList</span><span style="color:#F6F6F4;">([]</span><span style="color:#97E1F1;font-style:italic;">int</span><span style="color:#F6F6F4;">{</span><span style="color:#BF9EEE;">1</span><span style="color:#F6F6F4;">,</span><span style="color:#BF9EEE;">2</span><span style="color:#F6F6F4;">,</span><span style="color:#BF9EEE;">3</span><span style="color:#F6F6F4;">})</span></span>
<span class="line"><span style="color:#F6F6F4;"> list.</span><span style="color:#97E1F1;">DeleteAt</span><span style="color:#F6F6F4;">(</span><span style="color:#BF9EEE;">2</span><span style="color:#F6F6F4;">)</span></span>
<span class="line"><span style="color:#F6F6F4;"> fmt.</span><span style="color:#97E1F1;">Println</span><span style="color:#F6F6F4;">(l.</span><span style="color:#97E1F1;">getList</span><span style="color:#F6F6F4;">())</span></span>
<span class="line"><span style="color:#F6F6F4;">}</span></span></code></pre><pre class="shiki vitesse-light vp-code-light"><code><span class="line"><span style="color:#1E754F;">package</span><span style="color:#393A34;"> </span><span style="color:#59873A;">main</span></span>
<span class="line"><span style="color:#1E754F;">import</span><span style="color:#393A34;"> </span><span style="color:#999999;">(</span></span>
<span class="line"><span style="color:#393A34;"> </span><span style="color:#B5695999;">&quot;</span><span style="color:#59873A;">fmt</span><span style="color:#B5695999;">&quot;</span></span>
<span class="line"><span style="color:#393A34;"> </span><span style="color:#B5695999;">&quot;</span><span style="color:#59873A;">github.com/duke-git/lancet/datastructure/list</span><span style="color:#B5695999;">&quot;</span></span>
<span class="line"><span style="color:#999999;">)</span></span>
<span class="line"></span>
<span class="line"><span style="color:#1E754F;">func</span><span style="color:#393A34;"> </span><span style="color:#59873A;">main</span><span style="color:#999999;">()</span><span style="color:#393A34;"> </span><span style="color:#999999;">{</span></span>
<span class="line"><span style="color:#393A34;"> </span><span style="color:#B07D48;">l</span><span style="color:#393A34;"> </span><span style="color:#999999;">:=</span><span style="color:#393A34;"> list</span><span style="color:#999999;">.</span><span style="color:#998418;">NewCopyOnWriteList</span><span style="color:#999999;">([]</span><span style="color:#AB5959;">int</span><span style="color:#999999;">{</span><span style="color:#2F798A;">1</span><span style="color:#999999;">,</span><span style="color:#2F798A;">2</span><span style="color:#999999;">,</span><span style="color:#2F798A;">3</span><span style="color:#999999;">})</span></span>
<span class="line"><span style="color:#393A34;"> list</span><span style="color:#999999;">.</span><span style="color:#998418;">DeleteAt</span><span style="color:#999999;">(</span><span style="color:#2F798A;">2</span><span style="color:#999999;">)</span></span>
<span class="line"><span style="color:#393A34;"> fmt</span><span style="color:#999999;">.</span><span style="color:#998418;">Println</span><span style="color:#999999;">(</span><span style="color:#393A34;">l</span><span style="color:#999999;">.</span><span style="color:#998418;">getList</span><span style="color:#999999;">())</span></span>
<span class="line"><span style="color:#999999;">}</span></span></code></pre></div><h3 id="DeleteIf" tabindex="-1">DeleteIf <a class="header-anchor" href="#DeleteIf" aria-label="Permalink to &quot;DeleteIf&quot;"></a></h3><p>从此列表中删除第一个出现的指定元素(如果该元素存在)。</p><div class="language-go vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">go</span><pre class="shiki dracula-soft vp-code-dark"><code><span class="line"><span style="color:#F286C4;">func</span><span style="color:#F6F6F4;"> (c </span><span style="color:#F286C4;">*</span><span style="color:#F6F6F4;">CopyOnWriteList[T]) </span><span style="color:#62E884;">DeleteIf</span><span style="color:#F6F6F4;">(f </span><span style="color:#F286C4;">func</span><span style="color:#F6F6F4;">(T) </span><span style="color:#97E1F1;font-style:italic;">bool</span><span style="color:#F6F6F4;">) (oldValue </span><span style="color:#F286C4;">*</span><span style="color:#F6F6F4;">T, ok </span><span style="color:#97E1F1;font-style:italic;">bool</span><span style="color:#F6F6F4;">)</span></span></code></pre><pre class="shiki vitesse-light vp-code-light"><code><span class="line"><span style="color:#1E754F;">func</span><span style="color:#393A34;"> </span><span style="color:#999999;">(</span><span style="color:#393A34;">c </span><span style="color:#AB5959;">*</span><span style="color:#393A34;">CopyOnWriteList</span><span style="color:#999999;">[</span><span style="color:#393A34;">T</span><span style="color:#999999;">])</span><span style="color:#393A34;"> </span><span style="color:#59873A;">DeleteIf</span><span style="color:#999999;">(</span><span style="color:#393A34;">f </span><span style="color:#1E754F;">func</span><span style="color:#999999;">(</span><span style="color:#393A34;">T</span><span style="color:#999999;">)</span><span style="color:#393A34;"> </span><span style="color:#AB5959;">bool</span><span style="color:#999999;">)</span><span style="color:#393A34;"> </span><span style="color:#999999;">(</span><span style="color:#393A34;">oldValue </span><span style="color:#AB5959;">*</span><span style="color:#393A34;">T</span><span style="color:#999999;">,</span><span style="color:#393A34;"> ok </span><span style="color:#AB5959;">bool</span><span style="color:#999999;">)</span></span></code></pre></div><h4 id="示例-13" tabindex="-1">示例 <a class="header-anchor" href="#示例-13" aria-label="Permalink to &quot;示例&quot;"></a></h4><div class="language-go vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">go</span><pre class="shiki dracula-soft vp-code-dark"><code><span class="line"><span style="color:#F286C4;">package</span><span style="color:#F6F6F4;"> main</span></span>
<span class="line"><span style="color:#F286C4;">import</span><span style="color:#F6F6F4;"> (</span></span>
<span class="line"><span style="color:#F6F6F4;"> </span><span style="color:#DEE492;">&quot;</span><span style="color:#E7EE98;">fmt</span><span style="color:#DEE492;">&quot;</span></span>
<span class="line"><span style="color:#F6F6F4;"> </span><span style="color:#DEE492;">&quot;</span><span style="color:#E7EE98;">github.com/duke-git/lancet/datastructure/list</span><span style="color:#DEE492;">&quot;</span></span>
<span class="line"><span style="color:#F6F6F4;">)</span></span>
<span class="line"></span>
<span class="line"><span style="color:#F286C4;">func</span><span style="color:#F6F6F4;"> </span><span style="color:#62E884;">main</span><span style="color:#F6F6F4;">() {</span></span>
<span class="line"><span style="color:#F6F6F4;"> l </span><span style="color:#F286C4;">:=</span><span style="color:#F6F6F4;"> list.</span><span style="color:#97E1F1;">NewCopyOnWriteList</span><span style="color:#F6F6F4;">([]</span><span style="color:#97E1F1;font-style:italic;">int</span><span style="color:#F6F6F4;">{</span><span style="color:#BF9EEE;">1</span><span style="color:#F6F6F4;">,</span><span style="color:#BF9EEE;">2</span><span style="color:#F6F6F4;">,</span><span style="color:#BF9EEE;">3</span><span style="color:#F6F6F4;">})</span></span>
<span class="line"><span style="color:#F6F6F4;"> list.</span><span style="color:#97E1F1;">DeleteIf</span><span style="color:#F6F6F4;">(</span><span style="color:#F286C4;">func</span><span style="color:#F6F6F4;">(i </span><span style="color:#97E1F1;font-style:italic;">int</span><span style="color:#F6F6F4;">) </span><span style="color:#97E1F1;font-style:italic;">bool</span><span style="color:#F6F6F4;"> {</span></span>
<span class="line"><span style="color:#F6F6F4;"> </span><span style="color:#F286C4;">return</span><span style="color:#F6F6F4;"> i </span><span style="color:#F286C4;">==</span><span style="color:#F6F6F4;"> </span><span style="color:#BF9EEE;">2</span></span>
<span class="line"><span style="color:#F6F6F4;"> })</span></span>
<span class="line"><span style="color:#F6F6F4;"> fmt.</span><span style="color:#97E1F1;">Println</span><span style="color:#F6F6F4;">(l.</span><span style="color:#97E1F1;">getList</span><span style="color:#F6F6F4;">())</span></span>
<span class="line"><span style="color:#F6F6F4;">}</span></span></code></pre><pre class="shiki vitesse-light vp-code-light"><code><span class="line"><span style="color:#1E754F;">package</span><span style="color:#393A34;"> </span><span style="color:#59873A;">main</span></span>
<span class="line"><span style="color:#1E754F;">import</span><span style="color:#393A34;"> </span><span style="color:#999999;">(</span></span>
<span class="line"><span style="color:#393A34;"> </span><span style="color:#B5695999;">&quot;</span><span style="color:#59873A;">fmt</span><span style="color:#B5695999;">&quot;</span></span>
<span class="line"><span style="color:#393A34;"> </span><span style="color:#B5695999;">&quot;</span><span style="color:#59873A;">github.com/duke-git/lancet/datastructure/list</span><span style="color:#B5695999;">&quot;</span></span>
<span class="line"><span style="color:#999999;">)</span></span>
<span class="line"></span>
<span class="line"><span style="color:#1E754F;">func</span><span style="color:#393A34;"> </span><span style="color:#59873A;">main</span><span style="color:#999999;">()</span><span style="color:#393A34;"> </span><span style="color:#999999;">{</span></span>
<span class="line"><span style="color:#393A34;"> </span><span style="color:#B07D48;">l</span><span style="color:#393A34;"> </span><span style="color:#999999;">:=</span><span style="color:#393A34;"> list</span><span style="color:#999999;">.</span><span style="color:#998418;">NewCopyOnWriteList</span><span style="color:#999999;">([]</span><span style="color:#AB5959;">int</span><span style="color:#999999;">{</span><span style="color:#2F798A;">1</span><span style="color:#999999;">,</span><span style="color:#2F798A;">2</span><span style="color:#999999;">,</span><span style="color:#2F798A;">3</span><span style="color:#999999;">})</span></span>
<span class="line"><span style="color:#393A34;"> list</span><span style="color:#999999;">.</span><span style="color:#998418;">DeleteIf</span><span style="color:#999999;">(</span><span style="color:#1E754F;">func</span><span style="color:#999999;">(</span><span style="color:#393A34;">i </span><span style="color:#AB5959;">int</span><span style="color:#999999;">)</span><span style="color:#393A34;"> </span><span style="color:#AB5959;">bool</span><span style="color:#393A34;"> </span><span style="color:#999999;">{</span></span>
<span class="line"><span style="color:#393A34;"> </span><span style="color:#1E754F;">return</span><span style="color:#393A34;"> i </span><span style="color:#AB5959;">==</span><span style="color:#393A34;"> </span><span style="color:#2F798A;">2</span></span>
<span class="line"><span style="color:#393A34;"> </span><span style="color:#999999;">})</span></span>
<span class="line"><span style="color:#393A34;"> fmt</span><span style="color:#999999;">.</span><span style="color:#998418;">Println</span><span style="color:#999999;">(</span><span style="color:#393A34;">l</span><span style="color:#999999;">.</span><span style="color:#998418;">getList</span><span style="color:#999999;">())</span></span>
<span class="line"><span style="color:#999999;">}</span></span></code></pre></div><h3 id="DeleteBy" tabindex="-1">DeleteBy <a class="header-anchor" href="#DeleteBy" aria-label="Permalink to &quot;DeleteBy&quot;"></a></h3><p>从此列表中删除第一个出现的指定元素(如果该元素存在)。</p><div class="language-go vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">go</span><pre class="shiki dracula-soft vp-code-dark"><code><span class="line"><span style="color:#F286C4;">func</span><span style="color:#F6F6F4;"> (c </span><span style="color:#F286C4;">*</span><span style="color:#F6F6F4;">CopyOnWriteList[T]) </span><span style="color:#62E884;">DeleteBy</span><span style="color:#F6F6F4;">(e T) (</span><span style="color:#F286C4;">*</span><span style="color:#F6F6F4;">T </span><span style="color:#97E1F1;font-style:italic;">bool</span><span style="color:#F6F6F4;">)</span></span></code></pre><pre class="shiki vitesse-light vp-code-light"><code><span class="line"><span style="color:#1E754F;">func</span><span style="color:#393A34;"> </span><span style="color:#999999;">(</span><span style="color:#393A34;">c </span><span style="color:#AB5959;">*</span><span style="color:#393A34;">CopyOnWriteList</span><span style="color:#999999;">[</span><span style="color:#393A34;">T</span><span style="color:#999999;">])</span><span style="color:#393A34;"> </span><span style="color:#59873A;">DeleteBy</span><span style="color:#999999;">(</span><span style="color:#393A34;">e T</span><span style="color:#999999;">)</span><span style="color:#393A34;"> </span><span style="color:#999999;">(</span><span style="color:#AB5959;">*</span><span style="color:#393A34;">T </span><span style="color:#AB5959;">bool</span><span style="color:#999999;">)</span></span></code></pre></div><h4 id="示例-14" tabindex="-1">示例 <a class="header-anchor" href="#示例-14" aria-label="Permalink to &quot;示例&quot;"></a></h4><div class="language-go vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">go</span><pre class="shiki dracula-soft vp-code-dark"><code><span class="line"><span style="color:#F286C4;">package</span><span style="color:#F6F6F4;"> main</span></span>
<span class="line"><span style="color:#F286C4;">import</span><span style="color:#F6F6F4;"> (</span></span>
<span class="line"><span style="color:#F6F6F4;"> </span><span style="color:#DEE492;">&quot;</span><span style="color:#E7EE98;">fmt</span><span style="color:#DEE492;">&quot;</span></span>
<span class="line"><span style="color:#F6F6F4;"> </span><span style="color:#DEE492;">&quot;</span><span style="color:#E7EE98;">github.com/duke-git/lancet/datastructure/list</span><span style="color:#DEE492;">&quot;</span></span>
<span class="line"><span style="color:#F6F6F4;">)</span></span>
<span class="line"></span>
<span class="line"><span style="color:#F286C4;">func</span><span style="color:#F6F6F4;"> </span><span style="color:#62E884;">main</span><span style="color:#F6F6F4;">() {</span></span>
<span class="line"><span style="color:#F6F6F4;"> l </span><span style="color:#F286C4;">:=</span><span style="color:#F6F6F4;"> list.</span><span style="color:#97E1F1;">NewCopyOnWriteList</span><span style="color:#F6F6F4;">([]</span><span style="color:#97E1F1;font-style:italic;">int</span><span style="color:#F6F6F4;">{</span><span style="color:#BF9EEE;">1</span><span style="color:#F6F6F4;">,</span><span style="color:#BF9EEE;">2</span><span style="color:#F6F6F4;">,</span><span style="color:#BF9EEE;">3</span><span style="color:#F6F6F4;">})</span></span>
<span class="line"><span style="color:#F6F6F4;"> list.</span><span style="color:#97E1F1;">DeleteBy</span><span style="color:#F6F6F4;">(</span><span style="color:#BF9EEE;">2</span><span style="color:#F6F6F4;">)</span></span>
<span class="line"><span style="color:#F6F6F4;"> fmt.</span><span style="color:#97E1F1;">Println</span><span style="color:#F6F6F4;">(l.</span><span style="color:#97E1F1;">getList</span><span style="color:#F6F6F4;">())</span></span>
<span class="line"><span style="color:#F6F6F4;">}</span></span></code></pre><pre class="shiki vitesse-light vp-code-light"><code><span class="line"><span style="color:#1E754F;">package</span><span style="color:#393A34;"> </span><span style="color:#59873A;">main</span></span>
<span class="line"><span style="color:#1E754F;">import</span><span style="color:#393A34;"> </span><span style="color:#999999;">(</span></span>
<span class="line"><span style="color:#393A34;"> </span><span style="color:#B5695999;">&quot;</span><span style="color:#59873A;">fmt</span><span style="color:#B5695999;">&quot;</span></span>
<span class="line"><span style="color:#393A34;"> </span><span style="color:#B5695999;">&quot;</span><span style="color:#59873A;">github.com/duke-git/lancet/datastructure/list</span><span style="color:#B5695999;">&quot;</span></span>
<span class="line"><span style="color:#999999;">)</span></span>
<span class="line"></span>
<span class="line"><span style="color:#1E754F;">func</span><span style="color:#393A34;"> </span><span style="color:#59873A;">main</span><span style="color:#999999;">()</span><span style="color:#393A34;"> </span><span style="color:#999999;">{</span></span>
<span class="line"><span style="color:#393A34;"> </span><span style="color:#B07D48;">l</span><span style="color:#393A34;"> </span><span style="color:#999999;">:=</span><span style="color:#393A34;"> list</span><span style="color:#999999;">.</span><span style="color:#998418;">NewCopyOnWriteList</span><span style="color:#999999;">([]</span><span style="color:#AB5959;">int</span><span style="color:#999999;">{</span><span style="color:#2F798A;">1</span><span style="color:#999999;">,</span><span style="color:#2F798A;">2</span><span style="color:#999999;">,</span><span style="color:#2F798A;">3</span><span style="color:#999999;">})</span></span>
<span class="line"><span style="color:#393A34;"> list</span><span style="color:#999999;">.</span><span style="color:#998418;">DeleteBy</span><span style="color:#999999;">(</span><span style="color:#2F798A;">2</span><span style="color:#999999;">)</span></span>
<span class="line"><span style="color:#393A34;"> fmt</span><span style="color:#999999;">.</span><span style="color:#998418;">Println</span><span style="color:#999999;">(</span><span style="color:#393A34;">l</span><span style="color:#999999;">.</span><span style="color:#998418;">getList</span><span style="color:#999999;">())</span></span>
<span class="line"><span style="color:#999999;">}</span></span></code></pre></div><h3 id="DeleteRange" tabindex="-1">DeleteRange <a class="header-anchor" href="#DeleteRange" aria-label="Permalink to &quot;DeleteRange&quot;"></a></h3><p>从该列表中删除索引介于 fromIndex(包含)和 toIndex(不包含)之间的所有元素。 (左闭右开)。</p><div class="language-go vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">go</span><pre class="shiki dracula-soft vp-code-dark"><code><span class="line"><span style="color:#F286C4;">func</span><span style="color:#F6F6F4;"> (c </span><span style="color:#F286C4;">*</span><span style="color:#F6F6F4;">CopyOnWriteList[T]) </span><span style="color:#62E884;">DeleteRange</span><span style="color:#F6F6F4;">(start </span><span style="color:#97E1F1;font-style:italic;">int</span><span style="color:#F6F6F4;">, end </span><span style="color:#97E1F1;font-style:italic;">int</span><span style="color:#F6F6F4;">)</span></span></code></pre><pre class="shiki vitesse-light vp-code-light"><code><span class="line"><span style="color:#1E754F;">func</span><span style="color:#393A34;"> </span><span style="color:#999999;">(</span><span style="color:#393A34;">c </span><span style="color:#AB5959;">*</span><span style="color:#393A34;">CopyOnWriteList</span><span style="color:#999999;">[</span><span style="color:#393A34;">T</span><span style="color:#999999;">])</span><span style="color:#393A34;"> </span><span style="color:#59873A;">DeleteRange</span><span style="color:#999999;">(</span><span style="color:#393A34;">start </span><span style="color:#AB5959;">int</span><span style="color:#999999;">,</span><span style="color:#393A34;"> end </span><span style="color:#AB5959;">int</span><span style="color:#999999;">)</span></span></code></pre></div><h4 id="示例-15" tabindex="-1">示例 <a class="header-anchor" href="#示例-15" aria-label="Permalink to &quot;示例&quot;"></a></h4><div class="language-go vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">go</span><pre class="shiki dracula-soft vp-code-dark"><code><span class="line"><span style="color:#F286C4;">package</span><span style="color:#F6F6F4;"> main</span></span>
<span class="line"><span style="color:#F286C4;">import</span><span style="color:#F6F6F4;"> (</span></span>
<span class="line"><span style="color:#F6F6F4;"> </span><span style="color:#DEE492;">&quot;</span><span style="color:#E7EE98;">fmt</span><span style="color:#DEE492;">&quot;</span></span>
<span class="line"><span style="color:#F6F6F4;"> </span><span style="color:#DEE492;">&quot;</span><span style="color:#E7EE98;">github.com/duke-git/lancet/datastructure/list</span><span style="color:#DEE492;">&quot;</span></span>
<span class="line"><span style="color:#F6F6F4;">)</span></span>
<span class="line"></span>
<span class="line"><span style="color:#F286C4;">func</span><span style="color:#F6F6F4;"> </span><span style="color:#62E884;">main</span><span style="color:#F6F6F4;">() {</span></span>
<span class="line"><span style="color:#F6F6F4;"> l </span><span style="color:#F286C4;">:=</span><span style="color:#F6F6F4;"> list.</span><span style="color:#97E1F1;">NewCopyOnWriteList</span><span style="color:#F6F6F4;">([]</span><span style="color:#97E1F1;font-style:italic;">int</span><span style="color:#F6F6F4;">{</span><span style="color:#BF9EEE;">1</span><span style="color:#F6F6F4;">,</span><span style="color:#BF9EEE;">2</span><span style="color:#F6F6F4;">,</span><span style="color:#BF9EEE;">3</span><span style="color:#F6F6F4;">,</span><span style="color:#BF9EEE;">4</span><span style="color:#F6F6F4;">,</span><span style="color:#BF9EEE;">5</span><span style="color:#F6F6F4;">,</span><span style="color:#BF9EEE;">6</span><span style="color:#F6F6F4;">,</span><span style="color:#BF9EEE;">7</span><span style="color:#F6F6F4;">,</span><span style="color:#BF9EEE;">8</span><span style="color:#F6F6F4;">,</span><span style="color:#BF9EEE;">9</span><span style="color:#F6F6F4;">})</span></span>
<span class="line"><span style="color:#F6F6F4;"> list.</span><span style="color:#97E1F1;">DeleteRange</span><span style="color:#F6F6F4;">(</span><span style="color:#BF9EEE;">2</span><span style="color:#F6F6F4;">, </span><span style="color:#BF9EEE;">5</span><span style="color:#F6F6F4;">)</span></span>
<span class="line"><span style="color:#F6F6F4;"> fmt.</span><span style="color:#97E1F1;">Println</span><span style="color:#F6F6F4;">(l.</span><span style="color:#97E1F1;">getList</span><span style="color:#F6F6F4;">())</span></span>
<span class="line"><span style="color:#F6F6F4;">}</span></span></code></pre><pre class="shiki vitesse-light vp-code-light"><code><span class="line"><span style="color:#1E754F;">package</span><span style="color:#393A34;"> </span><span style="color:#59873A;">main</span></span>
<span class="line"><span style="color:#1E754F;">import</span><span style="color:#393A34;"> </span><span style="color:#999999;">(</span></span>
<span class="line"><span style="color:#393A34;"> </span><span style="color:#B5695999;">&quot;</span><span style="color:#59873A;">fmt</span><span style="color:#B5695999;">&quot;</span></span>
<span class="line"><span style="color:#393A34;"> </span><span style="color:#B5695999;">&quot;</span><span style="color:#59873A;">github.com/duke-git/lancet/datastructure/list</span><span style="color:#B5695999;">&quot;</span></span>
<span class="line"><span style="color:#999999;">)</span></span>
<span class="line"></span>
<span class="line"><span style="color:#1E754F;">func</span><span style="color:#393A34;"> </span><span style="color:#59873A;">main</span><span style="color:#999999;">()</span><span style="color:#393A34;"> </span><span style="color:#999999;">{</span></span>
<span class="line"><span style="color:#393A34;"> </span><span style="color:#B07D48;">l</span><span style="color:#393A34;"> </span><span style="color:#999999;">:=</span><span style="color:#393A34;"> list</span><span style="color:#999999;">.</span><span style="color:#998418;">NewCopyOnWriteList</span><span style="color:#999999;">([]</span><span style="color:#AB5959;">int</span><span style="color:#999999;">{</span><span style="color:#2F798A;">1</span><span style="color:#999999;">,</span><span style="color:#2F798A;">2</span><span style="color:#999999;">,</span><span style="color:#2F798A;">3</span><span style="color:#999999;">,</span><span style="color:#2F798A;">4</span><span style="color:#999999;">,</span><span style="color:#2F798A;">5</span><span style="color:#999999;">,</span><span style="color:#2F798A;">6</span><span style="color:#999999;">,</span><span style="color:#2F798A;">7</span><span style="color:#999999;">,</span><span style="color:#2F798A;">8</span><span style="color:#999999;">,</span><span style="color:#2F798A;">9</span><span style="color:#999999;">})</span></span>
<span class="line"><span style="color:#393A34;"> list</span><span style="color:#999999;">.</span><span style="color:#998418;">DeleteRange</span><span style="color:#999999;">(</span><span style="color:#2F798A;">2</span><span style="color:#999999;">,</span><span style="color:#393A34;"> </span><span style="color:#2F798A;">5</span><span style="color:#999999;">)</span></span>
<span class="line"><span style="color:#393A34;"> fmt</span><span style="color:#999999;">.</span><span style="color:#998418;">Println</span><span style="color:#999999;">(</span><span style="color:#393A34;">l</span><span style="color:#999999;">.</span><span style="color:#998418;">getList</span><span style="color:#999999;">())</span></span>
<span class="line"><span style="color:#999999;">}</span></span></code></pre></div><h3 id="Equal" tabindex="-1">Equal <a class="header-anchor" href="#Equal" aria-label="Permalink to &quot;Equal&quot;"></a></h3><p>如果指定的对象等于此列表,则返回 true。</p><div class="language-go vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">go</span><pre class="shiki dracula-soft vp-code-dark"><code><span class="line"><span style="color:#F286C4;">func</span><span style="color:#F6F6F4;"> (c </span><span style="color:#F286C4;">*</span><span style="color:#F6F6F4;">CopyOnWriteList[T]) </span><span style="color:#62E884;">Equal</span><span style="color:#F6F6F4;">(e []T) </span><span style="color:#97E1F1;font-style:italic;">bool</span></span></code></pre><pre class="shiki vitesse-light vp-code-light"><code><span class="line"><span style="color:#1E754F;">func</span><span style="color:#393A34;"> </span><span style="color:#999999;">(</span><span style="color:#393A34;">c </span><span style="color:#AB5959;">*</span><span style="color:#393A34;">CopyOnWriteList</span><span style="color:#999999;">[</span><span style="color:#393A34;">T</span><span style="color:#999999;">])</span><span style="color:#393A34;"> </span><span style="color:#59873A;">Equal</span><span style="color:#999999;">(</span><span style="color:#393A34;">e </span><span style="color:#999999;">[]</span><span style="color:#393A34;">T</span><span style="color:#999999;">)</span><span style="color:#393A34;"> </span><span style="color:#AB5959;">bool</span></span></code></pre></div><h4 id="示例-16" tabindex="-1">示例 <a class="header-anchor" href="#示例-16" aria-label="Permalink to &quot;示例&quot;"></a></h4><div class="language-go vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">go</span><pre class="shiki dracula-soft vp-code-dark"><code><span class="line"><span style="color:#F286C4;">package</span><span style="color:#F6F6F4;"> main</span></span>
<span class="line"><span style="color:#F286C4;">import</span><span style="color:#F6F6F4;"> (</span></span>
<span class="line"><span style="color:#F6F6F4;"> </span><span style="color:#DEE492;">&quot;</span><span style="color:#E7EE98;">fmt</span><span style="color:#DEE492;">&quot;</span></span>
<span class="line"><span style="color:#F6F6F4;"> </span><span style="color:#DEE492;">&quot;</span><span style="color:#E7EE98;">github.com/duke-git/lancet/datastructure/list</span><span style="color:#DEE492;">&quot;</span></span>
<span class="line"><span style="color:#F6F6F4;">)</span></span>
<span class="line"></span>
<span class="line"><span style="color:#F286C4;">func</span><span style="color:#F6F6F4;"> </span><span style="color:#62E884;">main</span><span style="color:#F6F6F4;">() {</span></span>
<span class="line"><span style="color:#F6F6F4;"> l </span><span style="color:#F286C4;">:=</span><span style="color:#F6F6F4;"> list.</span><span style="color:#97E1F1;">NewCopyOnWriteList</span><span style="color:#F6F6F4;">([]</span><span style="color:#97E1F1;font-style:italic;">int</span><span style="color:#F6F6F4;">{</span><span style="color:#BF9EEE;">1</span><span style="color:#F6F6F4;">,</span><span style="color:#BF9EEE;">2</span><span style="color:#F6F6F4;">,</span><span style="color:#BF9EEE;">3</span><span style="color:#F6F6F4;">,</span><span style="color:#BF9EEE;">4</span><span style="color:#F6F6F4;">,</span><span style="color:#BF9EEE;">5</span><span style="color:#F6F6F4;">,</span><span style="color:#BF9EEE;">6</span><span style="color:#F6F6F4;">,</span><span style="color:#BF9EEE;">7</span><span style="color:#F6F6F4;">,</span><span style="color:#BF9EEE;">8</span><span style="color:#F6F6F4;">,</span><span style="color:#BF9EEE;">9</span><span style="color:#F6F6F4;">})</span></span>
<span class="line"><span style="color:#F6F6F4;"> fmt.</span><span style="color:#97E1F1;">Println</span><span style="color:#F6F6F4;">(l.</span><span style="color:#97E1F1;">Equal</span><span style="color:#F6F6F4;">([]</span><span style="color:#97E1F1;font-style:italic;">int</span><span style="color:#F6F6F4;">{</span><span style="color:#BF9EEE;">1</span><span style="color:#F6F6F4;">,</span><span style="color:#BF9EEE;">2</span><span style="color:#F6F6F4;">,</span><span style="color:#BF9EEE;">3</span><span style="color:#F6F6F4;">,</span><span style="color:#BF9EEE;">4</span><span style="color:#F6F6F4;">,</span><span style="color:#BF9EEE;">5</span><span style="color:#F6F6F4;">,</span><span style="color:#BF9EEE;">6</span><span style="color:#F6F6F4;">,</span><span style="color:#BF9EEE;">7</span><span style="color:#F6F6F4;">,</span><span style="color:#BF9EEE;">8</span><span style="color:#F6F6F4;">,</span><span style="color:#BF9EEE;">9</span><span style="color:#F6F6F4;">}))</span></span>
<span class="line"><span style="color:#F6F6F4;">}</span></span></code></pre><pre class="shiki vitesse-light vp-code-light"><code><span class="line"><span style="color:#1E754F;">package</span><span style="color:#393A34;"> </span><span style="color:#59873A;">main</span></span>
<span class="line"><span style="color:#1E754F;">import</span><span style="color:#393A34;"> </span><span style="color:#999999;">(</span></span>
<span class="line"><span style="color:#393A34;"> </span><span style="color:#B5695999;">&quot;</span><span style="color:#59873A;">fmt</span><span style="color:#B5695999;">&quot;</span></span>
<span class="line"><span style="color:#393A34;"> </span><span style="color:#B5695999;">&quot;</span><span style="color:#59873A;">github.com/duke-git/lancet/datastructure/list</span><span style="color:#B5695999;">&quot;</span></span>
<span class="line"><span style="color:#999999;">)</span></span>
<span class="line"></span>
<span class="line"><span style="color:#1E754F;">func</span><span style="color:#393A34;"> </span><span style="color:#59873A;">main</span><span style="color:#999999;">()</span><span style="color:#393A34;"> </span><span style="color:#999999;">{</span></span>
<span class="line"><span style="color:#393A34;"> </span><span style="color:#B07D48;">l</span><span style="color:#393A34;"> </span><span style="color:#999999;">:=</span><span style="color:#393A34;"> list</span><span style="color:#999999;">.</span><span style="color:#998418;">NewCopyOnWriteList</span><span style="color:#999999;">([]</span><span style="color:#AB5959;">int</span><span style="color:#999999;">{</span><span style="color:#2F798A;">1</span><span style="color:#999999;">,</span><span style="color:#2F798A;">2</span><span style="color:#999999;">,</span><span style="color:#2F798A;">3</span><span style="color:#999999;">,</span><span style="color:#2F798A;">4</span><span style="color:#999999;">,</span><span style="color:#2F798A;">5</span><span style="color:#999999;">,</span><span style="color:#2F798A;">6</span><span style="color:#999999;">,</span><span style="color:#2F798A;">7</span><span style="color:#999999;">,</span><span style="color:#2F798A;">8</span><span style="color:#999999;">,</span><span style="color:#2F798A;">9</span><span style="color:#999999;">})</span></span>
<span class="line"><span style="color:#393A34;"> fmt</span><span style="color:#999999;">.</span><span style="color:#998418;">Println</span><span style="color:#999999;">(</span><span style="color:#393A34;">l</span><span style="color:#999999;">.</span><span style="color:#998418;">Equal</span><span style="color:#999999;">([]</span><span style="color:#AB5959;">int</span><span style="color:#999999;">{</span><span style="color:#2F798A;">1</span><span style="color:#999999;">,</span><span style="color:#2F798A;">2</span><span style="color:#999999;">,</span><span style="color:#2F798A;">3</span><span style="color:#999999;">,</span><span style="color:#2F798A;">4</span><span style="color:#999999;">,</span><span style="color:#2F798A;">5</span><span style="color:#999999;">,</span><span style="color:#2F798A;">6</span><span style="color:#999999;">,</span><span style="color:#2F798A;">7</span><span style="color:#999999;">,</span><span style="color:#2F798A;">8</span><span style="color:#999999;">,</span><span style="color:#2F798A;">9</span><span style="color:#999999;">}))</span></span>
<span class="line"><span style="color:#999999;">}</span></span></code></pre></div></div></div></main><footer class="VPDocFooter" data-v-a3c25e27 data-v-5774f702><!--[--><!--]--><div class="edit-info" data-v-5774f702><div class="edit-link" data-v-5774f702><a class="VPLink link vp-external-link-icon no-icon edit-link-button" href="https://github.com/duke-git/lancet/edit/v2/docs/api/packages/datastructure/copyonwritelist.md" target="_blank" rel="noreferrer" data-v-5774f702><!--[--><svg xmlns="http://www.w3.org/2000/svg" viewbox="0 0 24 24" class="edit-link-icon" aria-label="edit icon" data-v-5774f702><path d="M18,23H4c-1.7,0-3-1.3-3-3V6c0-1.7,1.3-3,3-3h7c0.6,0,1,0.4,1,1s-0.4,1-1,1H4C3.4,5,3,5.4,3,6v14c0,0.6,0.4,1,1,1h14c0.6,0,1-0.4,1-1v-7c0-0.6,0.4-1,1-1s1,0.4,1,1v7C21,21.7,19.7,23,18,23z"></path><path d="M8,17c-0.3,0-0.5-0.1-0.7-0.3C7,16.5,6.9,16.1,7,15.8l1-4c0-0.2,0.1-0.3,0.3-0.5l9.5-9.5c1.2-1.2,3.2-1.2,4.4,0c1.2,1.2,1.2,3.2,0,4.4l-9.5,9.5c-0.1,0.1-0.3,0.2-0.5,0.3l-4,1C8.2,17,8.1,17,8,17zM9.9,12.5l-0.5,2.1l2.1-0.5l9.3-9.3c0.4-0.4,0.4-1.1,0-1.6c-0.4-0.4-1.2-0.4-1.6,0l0,0L9.9,12.5z M18.5,2.5L18.5,2.5L18.5,2.5z"></path></svg> 对本页提出修改建议<!--]--></a></div><!----></div><nav class="prev-next" data-v-5774f702><div class="pager" data-v-5774f702><a class="pager-link prev" href="/api/packages/datastructure/list.html" data-v-5774f702><span class="desc" data-v-5774f702>上一页</span><span class="title" data-v-5774f702>线性表</span></a></div><div class="pager" data-v-5774f702><a class="pager-link next" href="/api/packages/datastructure/link.html" data-v-5774f702><span class="desc" data-v-5774f702>下一页</span><span class="title" data-v-5774f702>链表</span></a></div></nav></footer><!--[--><!--]--></div></div></div><!--[--><!--]--></div></div><footer class="VPFooter has-sidebar" data-v-324e8308 data-v-e4279f1c><div class="container" data-v-e4279f1c><p class="message" data-v-e4279f1c>Released under the MIT License.</p><p class="copyright" data-v-e4279f1c>Copyright © 2023-present Duke Du</p></div></footer><!--[--><!--]--></div></div>
<script>window.__VP_HASH_MAP__=JSON.parse("{\"api_overview.md\":\"0734e445\",\"api_packages_compare.md\":\"046b68ac\",\"api_packages_algorithm.md\":\"a5fd6586\",\"api_packages_concurrency.md\":\"02593d84\",\"api_packages_condition.md\":\"2519cae3\",\"api_packages_convertor.md\":\"3dc6f3b4\",\"api_packages_datastructure_copyonwritelist.md\":\"1a351580\",\"api_packages_datastructure_hashmap.md\":\"310e4711\",\"api_packages_datastructure_heap.md\":\"749f37d9\",\"api_packages_cryptor.md\":\"2d4965d7\",\"api_packages_datastructure_link.md\":\"53b556c9\",\"api_packages_datastructure_list.md\":\"c39c7138\",\"api_packages_datastructure_set.md\":\"8bd77304\",\"api_packages_datastructure_queue.md\":\"55dce1c4\",\"api_packages_datastructure_stack.md\":\"9d7b51a7\",\"api_packages_datastructure_tree.md\":\"1eeacf87\",\"api_packages_datetime.md\":\"53f898b5\",\"api_packages_formatter.md\":\"8820c0cf\",\"api_packages_fileutil.md\":\"94d3797c\",\"api_packages_function.md\":\"5cbb4c31\",\"api_packages_maputil.md\":\"68434477\",\"api_packages_pointer.md\":\"3465a655\",\"api_packages_random.md\":\"c5785d61\",\"api_packages_retry.md\":\"746cf8ed\",\"api_packages_mathutil.md\":\"274658f0\",\"api_packages_netutil.md\":\"d9f6ee6d\",\"api_packages_struct.md\":\"bdd9b8b9\",\"api_packages_stream.md\":\"f8a1897d\",\"api_packages_system.md\":\"3c9cc0ec\",\"api_packages_slice.md\":\"f48c775b\",\"en_api_overview.md\":\"1eb70105\",\"api_packages_strutil.md\":\"2574c069\",\"api_packages_xerror.md\":\"b2d37d2c\",\"api_packages_validator.md\":\"1f431893\",\"en_api_packages_compare.md\":\"409d8174\",\"api_packages_tuple.md\":\"04b31a3e\",\"en_api_packages_algorithm.md\":\"4b3abf4d\",\"en_api_packages_condition.md\":\"a164dfc9\",\"en_api_packages_concurrency.md\":\"4ccb7541\",\"en_api_packages_convertor.md\":\"4d1b1ca4\",\"en_api_packages_datastructure_hashmap.md\":\"55db8537\",\"en_api_packages_datastructure_copyonwritelist.md\":\"c4ab8b5a\",\"en_api_packages_datastructure_heap.md\":\"638dd5d1\",\"en_api_packages_cryptor.md\":\"83b35674\",\"en_api_packages_datastructure_link.md\":\"062572a5\",\"en_api_packages_datastructure_list.md\":\"d467285d\",\"en_api_packages_datastructure_queue.md\":\"88ad36da\",\"en_api_packages_datastructure_set.md\":\"963fc914\",\"en_api_packages_datastructure_stack.md\":\"1998c8dc\",\"en_api_packages_datastructure_tree.md\":\"e0a47a13\",\"en_api_packages_formatter.md\":\"00b1f98e\",\"en_api_packages_function.md\":\"0aff7e60\",\"en_api_packages_fileutil.md\":\"fea45f47\",\"en_api_packages_datetime.md\":\"32edaec1\",\"en_api_packages_pointer.md\":\"51cdc76e\",\"en_api_packages_random.md\":\"09d4734b\",\"en_api_packages_retry.md\":\"9ae8caac\",\"en_api_packages_mathutil.md\":\"cd3e0e74\",\"en_api_packages_maputil.md\":\"4fc65b0e\",\"en_api_packages_netutil.md\":\"4a71afe0\",\"en_api_packages_struct.md\":\"ebe3b9e2\",\"en_api_packages_stream.md\":\"99e473e0\",\"en_api_packages_system.md\":\"b89ed647\",\"en_api_packages_slice.md\":\"1a1b5495\",\"guide_introduction.md\":\"c4fdb40e\",\"index.md\":\"3fde7444\",\"en_guide_introduction.md\":\"d2712e12\",\"en_index.md\":\"3bc9892c\",\"en_guide_getting_started.md\":\"fbd5d30c\",\"guide_getting_started.md\":\"acfc7802\",\"en_api_packages_xerror.md\":\"5cac58cd\",\"en_api_packages_strutil.md\":\"2bfcfdc2\",\"en_api_packages_validator.md\":\"fa34c2f2\",\"en_api_packages_tuple.md\":\"ce828c9e\"}");window.__VP_SITE_DATA__=JSON.parse("{\"lang\":\"en-US\",\"dir\":\"ltr\",\"title\":\"Lancet\",\"description\":\"A VitePress site\",\"base\":\"/\",\"head\":[],\"appearance\":\"dark\",\"themeConfig\":{\"logo\":{\"src\":\"/lancet_logo_mini.png\",\"width\":24,\"height\":24},\"outline\":[2,3],\"search\":{\"provider\":\"local\"},\"socialLinks\":[{\"icon\":\"github\",\"link\":\"https://github.com/duke-git/lancet\"}],\"footer\":{\"copyright\":\"Copyright © 2023-present Duke Du\",\"message\":\"Released under the MIT License.\"}},\"locales\":{\"root\":{\"label\":\"简体中文\",\"lang\":\"zh-CN\",\"link\":\"/\",\"description\":\"一个强大的Go语言工具函数库\",\"head\":[[\"meta\",{\"property\":\"og:url\",\"content\":\"https://golancet.cn\"}],[\"meta\",{\"property\":\"og:description\",\"content\":\"一个强大的Go语言工具函数库\"}]],\"themeConfig\":{\"editLink\":{\"pattern\":\"https://github.com/duke-git/lancet/edit/v2/docs/:path\",\"text\":\"对本页提出修改建议\"},\"outline\":{\"label\":\"本页内容\"},\"docFooter\":{\"prev\":\"上一页\",\"next\":\"下一页\"},\"nav\":[{\"text\":\"首页\",\"link\":\"/\",\"activeMatch\":\"^/\"},{\"text\":\"指南\",\"link\":\"/guide/introduction\",\"activeMatch\":\"^/guide/\"},{\"text\":\"API\",\"link\":\"/api/overview\",\"activeMatch\":\"^/api/\"},{\"text\":\"相关链接\",\"items\":[{\"text\":\"论坛\",\"link\":\"https://github.com/duke-git/lancet/discussions\"},{\"text\":\"更新日志\",\"link\":\"https://github.com/duke-git/lancet/releases\"},{\"text\":\"参与贡献\",\"link\":\"https://github.com/duke-git/lancet/blob/main/CONTRIBUTING.zh-CN.md\"}]}],\"sidebar\":{\"/\":[{\"text\":\"介绍\",\"collapsed\":true,\"items\":[{\"text\":\"Lancet是什么\",\"link\":\"/guide/introduction\"},{\"text\":\"开始\",\"link\":\"/guide/getting_started\"}]}],\"/api/\":[{\"text\":\"概览\",\"items\":[{\"text\":\"API概述\",\"link\":\"/api/overview\"}]},{\"text\":\"API文档\",\"collapsed\":false,\"items\":[{\"text\":\"算法\",\"link\":\"/api/packages/algorithm\"},{\"text\":\"比较器\",\"link\":\"/api/packages/compare\"},{\"text\":\"并发处理\",\"link\":\"/api/packages/concurrency\"},{\"text\":\"条件判断\",\"link\":\"/api/packages/condition\"},{\"text\":\"类型转换\",\"link\":\"/api/packages/convertor\"},{\"text\":\"加密&解密\",\"link\":\"/api/packages/cryptor\"},{\"text\":\"数据结构\",\"collapsed\":true,\"items\":[{\"text\":\"线性表\",\"link\":\"/api/packages/datastructure/list\"},{\"text\":\"线性表(线程安全)\",\"link\":\"/api/packages/datastructure/copyonwritelist\"},{\"text\":\"链表\",\"link\":\"/api/packages/datastructure/link\"},{\"text\":\"栈\",\"link\":\"/api/packages/datastructure/stack\"},{\"text\":\"队列\",\"link\":\"/api/packages/datastructure/queue\"},{\"text\":\"堆\",\"link\":\"/api/packages/datastructure/heap\"},{\"text\":\"树\",\"link\":\"/api/packages/datastructure/tree\"},{\"text\":\"集合\",\"link\":\"/api/packages/datastructure/set\"},{\"text\":\"HashMap\",\"link\":\"/api/packages/datastructure/hashmap\"}]},{\"text\":\"日期&时间\",\"link\":\"/api/packages/datetime\"},{\"text\":\"文件\",\"link\":\"/api/packages/fileutil\"},{\"text\":\"格式化工具\",\"link\":\"/api/packages/formatter\"},{\"text\":\"函数\",\"link\":\"/api/packages/function\"},{\"text\":\"数学工具\",\"link\":\"/api/packages/mathutil\"},{\"text\":\"Map\",\"link\":\"/api/packages/maputil\"},{\"text\":\"网络\",\"link\":\"/api/packages/netutil\"},{\"text\":\"指针\",\"link\":\"/api/packages/pointer\"},{\"text\":\"随机数\",\"link\":\"/api/packages/random\"},{\"text\":\"重试\",\"link\":\"/api/packages/retry\"},{\"text\":\"切片\",\"link\":\"/api/packages/slice\"},{\"text\":\"流\",\"link\":\"/api/packages/stream\"},{\"text\":\"结构体\",\"link\":\"/api/packages/struct\"},{\"text\":\"字符串\",\"link\":\"/api/packages/strutil\"},{\"text\":\"系统\",\"link\":\"/api/packages/system\"},{\"text\":\"元组\",\"link\":\"/api/packages/tuple\"},{\"text\":\"验证器\",\"link\":\"/api/packages/validator\"},{\"text\":\"错误处理\",\"link\":\"/api/packages/xerror\"}]}]}}},\"en\":{\"label\":\"English\",\"lang\":\"en-US\",\"link\":\"/en/\",\"description\":\"A powerful util function library of Go\",\"head\":[[\"meta\",{\"property\":\"og:url\",\"content\":\"https://golancet.cn\"}],[\"meta\",{\"property\":\"og:description\",\"content\":\"A powerful util function library of Go\"}]],\"themeConfig\":{\"editLink\":{\"pattern\":\"https://github.com/duke-git/lancet/edit/v2/docs/:path\",\"text\":\"Suggest changes to this page\"},\"nav\":[{\"text\":\"Home\",\"link\":\"/en/\",\"activeMatch\":\"^/en/\"},{\"text\":\"Guide\",\"link\":\"/en/guide/introduction\",\"activeMatch\":\"^/en/guide/\"},{\"text\":\"API\",\"link\":\"/en/api/overview\",\"activeMatch\":\"^/en/api/\"},{\"text\":\"Links\",\"items\":[{\"text\":\"Discussion\",\"link\":\"https://github.com/duke-git/lancet/discussions\"},{\"text\":\"Changelog\",\"link\":\"https://github.com/duke-git/lancet/releases\"},{\"text\":\"Contribution\",\"link\":\"https://github.com/duke-git/lancet/blob/main/CONTRIBUTING.en-US.md\"}]}],\"sidebar\":{\"/en/\":[{\"text\":\"Introduction\",\"collapsed\":false,\"items\":[{\"text\":\"What is Lancet\",\"link\":\"/en/guide/introduction\"},{\"text\":\"getting started\",\"link\":\"/en/guide/getting_started\"}]}],\"/en/api/\":[{\"text\":\"overview\",\"items\":[{\"text\":\"overview of API\",\"link\":\"/en/api/overview\"}]},{\"text\":\"packages\",\"collapsed\":false,\"items\":[{\"text\":\"algorithm\",\"link\":\"/en/api/packages/algorithm\"},{\"text\":\"compare\",\"link\":\"/en/api/packages/compare\"},{\"text\":\"concurrency\",\"link\":\"/en/api/packages/concurrency\"},{\"text\":\"condition\",\"link\":\"/en/api/packages/condition\"},{\"text\":\"convertor\",\"link\":\"/en/api/packages/convertor\"},{\"text\":\"cryptor\",\"link\":\"/en/api/packages/cryptor\"},{\"text\":\"datastructure\",\"collapsed\":true,\"items\":[{\"text\":\"list\",\"link\":\"/en/api/packages/datastructure/list\"},{\"text\":\"safelist\",\"link\":\"/en/api/packages/datastructure/copyonwritelist\"},{\"text\":\"link\",\"link\":\"/en/api/packages/datastructure/link\"},{\"text\":\"stack\",\"link\":\"/en/api/packages/datastructure/stack\"},{\"text\":\"queue\",\"link\":\"/en/api/packages/datastructure/queue\"},{\"text\":\"heap\",\"link\":\"/en/api/packages/datastructure/heap\"},{\"text\":\"tree\",\"link\":\"/en/api/packages/datastructure/tree\"},{\"text\":\"set\",\"link\":\"/en/api/packages/datastructure/set\"},{\"text\":\"hashmap\",\"link\":\"/en/api/packages/datastructure/hashmap\"}]},{\"text\":\"datetime\",\"link\":\"/en/api/packages/datetime\"},{\"text\":\"fileutil\",\"link\":\"/en/api/packages/fileutil\"},{\"text\":\"formatter\",\"link\":\"/en/api/packages/formatter\"},{\"text\":\"function\",\"link\":\"/en/api/packages/function\"},{\"text\":\"mathutil\",\"link\":\"/en/api/packages/mathutil\"},{\"text\":\"maputil\",\"link\":\"/en/api/packages/maputil\"},{\"text\":\"netutil\",\"link\":\"/en/api/packages/netutil\"},{\"text\":\"pointer\",\"link\":\"/en/api/packages/pointer\"},{\"text\":\"random\",\"link\":\"/en/api/packages/random\"},{\"text\":\"retry\",\"link\":\"/en/api/packages/retry\"},{\"text\":\"slice\",\"link\":\"/en/api/packages/slice\"},{\"text\":\"stream\",\"link\":\"/en/api/packages/stream\"},{\"text\":\"struct\",\"link\":\"/en/api/packages/struct\"},{\"text\":\"strutil\",\"link\":\"/en/api/packages/strutil\"},{\"text\":\"system\",\"link\":\"/en/api/packages/system\"},{\"text\":\"tuple\",\"link\":\"/en/api/packages/tuple\"},{\"text\":\"validator\",\"link\":\"/en/api/packages/validator\"},{\"text\":\"xerror\",\"link\":\"/en/api/packages/xerror\"}]}]}}}},\"scrollOffset\":90,\"cleanUrls\":false}");</script>
</body>
</html>