mirror of
https://github.com/jaywcjlove/reference.git
synced 2025-06-17 20:51:21 +08:00
577 lines
58 KiB
HTML
577 lines
58 KiB
HTML
<!doctype html>
|
||
<html lang="en" data-color-mode="dark">
|
||
<head>
|
||
<meta charset="utf-8">
|
||
<title>C# 备忘清单
|
||
& cs cheatsheet & Quick Reference</title>
|
||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||
<meta description="提供基本语法和方法的 C# 快速参考备忘单
|
||
|
||
入门,为开发人员分享快速参考备忘单。">
|
||
<meta keywords="cs,reference,Quick,Reference,cheatsheet,cheat,sheet">
|
||
<link rel="icon" href="data:image/svg+xml,%3Csvg%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20height%3D%221em%22%20width%3D%221em%22%3E%20%3Cpath%20d%3D%22m21.66%2010.44-.98%204.18c-.84%203.61-2.5%205.07-5.62%204.77-.5-.04-1.04-.13-1.62-.27l-1.68-.4c-4.17-.99-5.46-3.05-4.48-7.23l.98-4.19c.2-.85.44-1.59.74-2.2%201.17-2.42%203.16-3.07%206.5-2.28l1.67.39c4.19.98%205.47%203.05%204.49%207.23Z%22%20fill%3D%22%23c9d1d9%22%2F%3E%20%3Cpath%20d%3D%22M15.06%2019.39c-.62.42-1.4.77-2.35%201.08l-1.58.52c-3.97%201.28-6.06.21-7.35-3.76L2.5%2013.28c-1.28-3.97-.22-6.07%203.75-7.35l1.58-.52c.41-.13.8-.24%201.17-.31-.3.61-.54%201.35-.74%202.2l-.98%204.19c-.98%204.18.31%206.24%204.48%207.23l1.68.4c.58.14%201.12.23%201.62.27Zm2.43-8.88c-.06%200-.12-.01-.19-.02l-4.85-1.23a.75.75%200%200%201%20.37-1.45l4.85%201.23a.748.748%200%200%201-.18%201.47Z%22%20fill%3D%22%23228e6c%22%20%2F%3E%20%3Cpath%20d%3D%22M14.56%2013.89c-.06%200-.12-.01-.19-.02l-2.91-.74a.75.75%200%200%201%20.37-1.45l2.91.74c.4.1.64.51.54.91-.08.34-.38.56-.72.56Z%22%20fill%3D%22%23228e6c%22%20%2F%3E%20%3C%2Fsvg%3E" type="image/svg+xml">
|
||
<link rel="stylesheet" href="../style/style.css">
|
||
<link rel="stylesheet" href="../style/katex.css">
|
||
</head>
|
||
<body><nav class="header-nav"><div class="max-container"><a href="../index.html" class="logo"><svg viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg" height="1em" width="1em">
|
||
<path d="m21.66 10.44-.98 4.18c-.84 3.61-2.5 5.07-5.62 4.77-.5-.04-1.04-.13-1.62-.27l-1.68-.4c-4.17-.99-5.46-3.05-4.48-7.23l.98-4.19c.2-.85.44-1.59.74-2.2 1.17-2.42 3.16-3.07 6.5-2.28l1.67.39c4.19.98 5.47 3.05 4.49 7.23Z" fill="#c9d1d9"></path>
|
||
<path d="M15.06 19.39c-.62.42-1.4.77-2.35 1.08l-1.58.52c-3.97 1.28-6.06.21-7.35-3.76L2.5 13.28c-1.28-3.97-.22-6.07 3.75-7.35l1.58-.52c.41-.13.8-.24 1.17-.31-.3.61-.54 1.35-.74 2.2l-.98 4.19c-.98 4.18.31 6.24 4.48 7.23l1.68.4c.58.14 1.12.23 1.62.27Zm2.43-8.88c-.06 0-.12-.01-.19-.02l-4.85-1.23a.75.75 0 0 1 .37-1.45l4.85 1.23a.748.748 0 0 1-.18 1.47Z" fill="#228e6c"></path>
|
||
<path d="M14.56 13.89c-.06 0-.12-.01-.19-.02l-2.91-.74a.75.75 0 0 1 .37-1.45l2.91.74c.4.1.64.51.54.91-.08.34-.38.56-.72.56Z" fill="#228e6c"></path>
|
||
</svg>
|
||
<span class="title">Quick Reference</span></a><div class="menu"><a href="javascript:void(0);" class="searchbtn" id="searchbtn"><svg xmlns="http://www.w3.org/2000/svg" height="1em" width="1em" viewBox="0 0 18 18">
|
||
<path fill="currentColor" d="M17.71,16.29 L14.31,12.9 C15.4069846,11.5024547 16.0022094,9.77665502 16,8 C16,3.581722 12.418278,0 8,0 C3.581722,0 0,3.581722 0,8 C0,12.418278 3.581722,16 8,16 C9.77665502,16.0022094 11.5024547,15.4069846 12.9,14.31 L16.29,17.71 C16.4777666,17.8993127 16.7333625,18.0057983 17,18.0057983 C17.2666375,18.0057983 17.5222334,17.8993127 17.71,17.71 C17.8993127,17.5222334 18.0057983,17.2666375 18.0057983,17 C18.0057983,16.7333625 17.8993127,16.4777666 17.71,16.29 Z M2,8 C2,4.6862915 4.6862915,2 8,2 C11.3137085,2 14,4.6862915 14,8 C14,11.3137085 11.3137085,14 8,14 C4.6862915,14 2,11.3137085 2,8 Z"></path>
|
||
</svg><span>搜索</span><span>⌘K</span></a><a href="https://github.com/jaywcjlove/reference/blob/main/docs/cs.md" class="" target="__blank"><svg viewBox="0 0 36 36" fill="currentColor" height="1em" width="1em"><path d="m33 6.4-3.7-3.7a1.71 1.71 0 0 0-2.36 0L23.65 6H6a2 2 0 0 0-2 2v22a2 2 0 0 0 2 2h22a2 2 0 0 0 2-2V11.76l3-3a1.67 1.67 0 0 0 0-2.36ZM18.83 20.13l-4.19.93 1-4.15 9.55-9.57 3.23 3.23ZM29.5 9.43 26.27 6.2l1.85-1.85 3.23 3.23Z"></path><path fill="none" d="M0 0h36v36H0z"></path></svg><span>编辑</span></a><button id="darkMode" type="button"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor" class="light" height="1em" width="1em">
|
||
<path d="M6.995 12c0 2.761 2.246 5.007 5.007 5.007s5.007-2.246 5.007-5.007-2.246-5.007-5.007-5.007S6.995 9.239 6.995 12zM11 19h2v3h-2zm0-17h2v3h-2zm-9 9h3v2H2zm17 0h3v2h-3zM5.637 19.778l-1.414-1.414 2.121-2.121 1.414 1.414zM16.242 6.344l2.122-2.122 1.414 1.414-2.122 2.122zM6.344 7.759 4.223 5.637l1.415-1.414 2.12 2.122zm13.434 10.605-1.414 1.414-2.122-2.122 1.414-1.414z"></path>
|
||
</svg>
|
||
<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 24 24" class="dark" height="1em" width="1em">
|
||
<path d="M12 11.807A9.002 9.002 0 0 1 10.049 2a9.942 9.942 0 0 0-5.12 2.735c-3.905 3.905-3.905 10.237 0 14.142 3.906 3.906 10.237 3.905 14.143 0a9.946 9.946 0 0 0 2.735-5.119A9.003 9.003 0 0 1 12 11.807z"></path>
|
||
</svg>
|
||
</button><script src="../js/dark.js?v=1.3.4"></script><a href="https://github.com/jaywcjlove/reference" class="" target="__blank"><svg viewBox="0 0 16 16" fill="currentColor" height="1em" width="1em"><path d="M8 0C3.58 0 0 3.58 0 8c0 3.54 2.29 6.53 5.47 7.59.4.07.55-.17.55-.38 0-.19-.01-.82-.01-1.49-2.01.37-2.53-.49-2.69-.94-.09-.23-.48-.94-.82-1.13-.28-.15-.68-.52-.01-.53.63-.01 1.08.58 1.23.82.72 1.21 1.87.87 2.33.66.07-.52.28-.87.51-1.07-1.78-.2-3.64-.89-3.64-3.95 0-.87.31-1.59.82-2.15-.08-.2-.36-1.02.08-2.12 0 0 .67-.21 2.2.82.64-.18 1.32-.27 2-.27.68 0 1.36.09 2 .27 1.53-1.04 2.2-.82 2.2-.82.44 1.1.16 1.92.08 2.12.51.56.82 1.27.82 2.15 0 3.07-1.87 3.75-3.65 3.95.29.25.54.73.54 1.48 0 1.07-.01 1.93-.01 2.2 0 .21.15.46.55.38A8.012 8.012 0 0 0 16 8c0-4.42-3.58-8-8-8z"></path></svg></a></div></div></nav><div class="wrap h1body-exist max-container"><header class="wrap-header h1wrap"><h1 id="c-备忘清单"><svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" width="1em" height="1em" viewBox="0 0 200 218">
|
||
<path d="M100,0.44 L100,0.455333333 L199.666667,58.5993333 L199.666667,159.400667 L100,217.56 L0.333333333,159.400667 L0.333333333,58.5993333 L100,0.44 Z M82.0833333,55.333 C53.8740706,55.3333333 31,78.2074039 31,106.424 L31,111.576 C31.0041913,129.277326 40.1707165,145.7152 55.2277239,155.022373 C70.2847313,164.329546 89.0864906,165.17968 104.922,157.269333 L111.101333,154.202667 L104.232,140.479333 L98.068,143.546 C86.9899096,149.088667 73.8317911,148.500121 63.2927817,141.99055 C52.7537723,135.480978 46.336719,123.978635 46.3333333,111.591333 L46.3333333,106.439333 C46.3346881,94.0500894 52.7491422,82.5443897 63.2870103,76.0292762 C73.8248785,69.5141628 86.9843283,68.9181542 98.068,74.454 L104.232,77.536 L111.101333,63.828 L104.922,60.746 C98.0448161,57.3003013 90.4812112,55.4533442 82.7961467,55.3389754 L82.0833333,55.333 Z M138.333333,70.6666667 L123,70.6666667 L123,86 L107.666667,86 L107.666667,101.333333 L123,101.333333 L123,116.666667 L107.666667,116.666667 L107.666667,132 L123,132 L123,147.333333 L138.333333,147.333333 L138.333333,132 L153.666667,132 L153.666667,147.333333 L169,147.333333 L169,132 L184.333333,132 L184.333333,116.666667 L169,116.666667 L169,101.333333 L184.333333,101.333333 L184.333333,86 L169,86 L169,70.6666667 L153.666667,70.6666667 L153.666667,86 L138.333333,86 L138.333333,70.6666667 Z M153.666667,101.333333 L153.666667,116.666667 L138.333333,116.666667 L138.333333,101.333333 L153.666667,101.333333 Z"></path></svg><a aria-hidden="true" tabindex="-1" href="#c-备忘清单"><span class="icon icon-link"></span></a>C# 备忘清单</h1><div class="wrap-body">
|
||
<p>提供基本语法和方法的 C# 快速参考备忘单</p>
|
||
</div></header><div class="menu-tocs"><div class="menu-btn"><svg aria-hidden="true" fill="currentColor" height="1em" width="1em" viewBox="0 0 16 16" version="1.1" data-view-component="true">
|
||
<path fill-rule="evenodd" d="M2 4a1 1 0 100-2 1 1 0 000 2zm3.75-1.5a.75.75 0 000 1.5h8.5a.75.75 0 000-1.5h-8.5zm0 5a.75.75 0 000 1.5h8.5a.75.75 0 000-1.5h-8.5zm0 5a.75.75 0 000 1.5h8.5a.75.75 0 000-1.5h-8.5zM3 8a1 1 0 11-2 0 1 1 0 012 0zm-1 6a1 1 0 100-2 1 1 0 000 2z"></path>
|
||
</svg></div><div class="menu-modal"><a aria-hidden="true" class="leve2 tocs-link" data-num="2" href="#入门">入门</a><a aria-hidden="true" class="leve3 tocs-link" data-num="3" href="#hellocs">Hello.cs</a><a aria-hidden="true" class="leve3 tocs-link" data-num="3" href="#命名空间">命名空间</a><a aria-hidden="true" class="leve3 tocs-link" data-num="3" href="#访问修饰符">访问修饰符</a><a aria-hidden="true" class="leve3 tocs-link" data-num="3" href="#变量">变量</a><a aria-hidden="true" class="leve3 tocs-link" data-num="3" href="#注释">注释</a><a aria-hidden="true" class="leve3 tocs-link" data-num="3" href="#字符串">字符串</a><a aria-hidden="true" class="leve3 tocs-link" data-num="3" href="#用户输入">用户输入</a><a aria-hidden="true" class="leve3 tocs-link" data-num="3" href="#条件判断">条件判断</a><a aria-hidden="true" class="leve3 tocs-link" data-num="3" href="#数组">数组</a><a aria-hidden="true" class="leve3 tocs-link" data-num="3" href="#循环">循环</a><a aria-hidden="true" class="leve2 tocs-link" data-num="2" href="#c-数据类型">C# 数据类型</a><a aria-hidden="true" class="leve3 tocs-link" data-num="3" href="#原始数据类型">原始数据类型</a><a aria-hidden="true" class="leve3 tocs-link" data-num="3" href="#基本数据类型">基本数据类型</a><a aria-hidden="true" class="leve2 tocs-link" data-num="2" href="#c-字符串">C# 字符串</a><a aria-hidden="true" class="leve3 tocs-link" data-num="3" href="#字符串连接">字符串连接</a><a aria-hidden="true" class="leve3 tocs-link" data-num="3" href="#字符串插值">字符串插值</a><a aria-hidden="true" class="leve3 tocs-link" data-num="3" href="#字符串成员">字符串成员</a><a aria-hidden="true" class="leve3 tocs-link" data-num="3" href="#逐字字符串">逐字字符串</a><a aria-hidden="true" class="leve3 tocs-link" data-num="3" href="#成员示例">成员示例</a><a aria-hidden="true" class="leve3 tocs-link" data-num="3" href="#频繁字符串拼接">频繁字符串拼接</a><a aria-hidden="true" class="leve3 tocs-link" data-num="3" href="#原始字符串文本">原始字符串文本</a><a aria-hidden="true" class="leve3 tocs-link" data-num="3" href="#字符串操作">字符串操作</a><a aria-hidden="true" class="leve3 tocs-link" data-num="3" href="#逻辑运算">逻辑运算</a><a aria-hidden="true" class="leve2 tocs-link" data-num="2" href="#杂项">杂项</a><a aria-hidden="true" class="leve3 tocs-link" data-num="3" href="#常用-net-概念">常用 .NET 概念</a></div></div><div class="h1wrap-body"><div class="wrap h2body-exist"><div class="wrap-header h2wrap"><h2 id="入门"><a aria-hidden="true" tabindex="-1" href="#入门"><span class="icon icon-link"></span></a>入门</h2><div class="wrap-body">
|
||
</div></div><div class="h2wrap-body"><div class="wrap h3body-not-exist"><div class="wrap-header h3wrap"><h3 id="hellocs"><a aria-hidden="true" tabindex="-1" href="#hellocs"><span class="icon icon-link"></span></a>Hello.cs</h3><div class="wrap-body">
|
||
<pre class="language-cs"><code class="language-cs code-highlight"><span class="code-line"><span class="token keyword">class</span> <span class="token class-name">Hello</span> <span class="token punctuation">{</span>
|
||
</span><span class="code-line"> <span class="token comment">// main method</span>
|
||
</span><span class="code-line"> <span class="token keyword">static</span> <span class="token return-type class-name"><span class="token keyword">void</span></span> <span class="token function">Main</span><span class="token punctuation">(</span><span class="token class-name"><span class="token keyword">string</span><span class="token punctuation">[</span><span class="token punctuation">]</span></span> args<span class="token punctuation">)</span>
|
||
</span><span class="code-line"> <span class="token punctuation">{</span>
|
||
</span><span class="code-line"> <span class="token comment">// 输出: Hello, world!</span>
|
||
</span><span class="code-line"> Console<span class="token punctuation">.</span><span class="token function">WriteLine</span><span class="token punctuation">(</span><span class="token string">"Hello, world!"</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
|
||
</span><span class="code-line"> <span class="token punctuation">}</span>
|
||
</span><span class="code-line"><span class="token punctuation">}</span>
|
||
</span></code></pre>
|
||
<p>编译运行(确保在项目目录下)</p>
|
||
<pre class="language-shell"><code class="language-shell code-highlight"><span class="code-line">$ dotnet run
|
||
</span><span class="code-line">Hello, world<span class="token operator">!</span>
|
||
</span></code></pre>
|
||
</div></div></div><div class="wrap h3body-not-exist"><div class="wrap-header h3wrap"><h3 id="命名空间"><a aria-hidden="true" tabindex="-1" href="#命名空间"><span class="icon icon-link"></span></a>命名空间</h3><div class="wrap-body">
|
||
<pre class="language-cs"><code class="language-cs code-highlight"><span class="code-line"><span class="token comment">//使用时 using 命名名称</span>
|
||
</span><span class="code-line"><span class="token keyword">using</span> <span class="token namespace">Test</span><span class="token punctuation">;</span>
|
||
</span><span class="code-line"><span class="token comment">//创建:</span>
|
||
</span><span class="code-line"><span class="token keyword">namespace</span> <span class="token namespace">Test</span><span class="token punctuation">{</span>
|
||
</span><span class="code-line"> <span class="token keyword">class</span> <span class="token class-name">Test_className</span><span class="token punctuation">{</span>
|
||
</span><span class="code-line"> <span class="token comment">//main方法是程序的主入口</span>
|
||
</span><span class="code-line"> <span class="token keyword">public</span> <span class="token return-type class-name"><span class="token keyword">void</span></span> <span class="token function">Myclass</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">{</span>
|
||
</span><span class="code-line"> console<span class="token punctuation">.</span><span class="token function">writeline</span><span class="token punctuation">(</span><span class="token string">"Test"</span><span class="token punctuation">)</span>
|
||
</span><span class="code-line"> <span class="token punctuation">}</span>
|
||
</span><span class="code-line"> <span class="token punctuation">}</span>
|
||
</span><span class="code-line"><span class="token punctuation">}</span>
|
||
</span></code></pre>
|
||
</div></div></div><div class="wrap h3body-not-exist"><div class="wrap-header h3wrap"><h3 id="访问修饰符"><a aria-hidden="true" tabindex="-1" href="#访问修饰符"><span class="icon icon-link"></span></a>访问修饰符</h3><div class="wrap-body">
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<table><thead><tr><th>声明的可访问性</th><th>含义</th></tr></thead><tbody><tr><td>public</td><td>访问不受限制</td></tr><tr><td>protected</td><td>访问限于包含类或派生自包含类的类型 (该类内部和继承类中可以访问)</td></tr><tr><td>internal</td><td>访问限于当前程序集</td></tr><tr><td>protected internal</td><td>访问限于当前程序集或派生自包含类的类型</td></tr><tr><td>private</td><td>访问限于包含类</td></tr><tr><td>private protected</td><td>访问限于包含类或当前程序集中派生自包含类的类型,自 C# 7.2 之后可用</td></tr></tbody></table>
|
||
</div></div></div><div class="wrap h3body-not-exist"><div class="wrap-header h3wrap"><h3 id="变量"><a aria-hidden="true" tabindex="-1" href="#变量"><span class="icon icon-link"></span></a>变量</h3><div class="wrap-body">
|
||
<pre class="language-cs"><code class="language-cs code-highlight"><span class="code-line"><span class="token class-name"><span class="token keyword">int</span></span> intNum <span class="token operator">=</span> <span class="token number">9</span><span class="token punctuation">;</span>
|
||
</span><span class="code-line"><span class="token class-name"><span class="token keyword">long</span></span> longNum <span class="token operator">=</span> <span class="token number">9999999</span><span class="token punctuation">;</span>
|
||
</span><span class="code-line"><span class="token class-name"><span class="token keyword">float</span></span> floatNum <span class="token operator">=</span> <span class="token number">9.99F</span><span class="token punctuation">;</span>
|
||
</span><span class="code-line"><span class="token class-name"><span class="token keyword">double</span></span> doubleNum <span class="token operator">=</span> <span class="token number">99.999</span><span class="token punctuation">;</span>
|
||
</span><span class="code-line"><span class="token class-name"><span class="token keyword">decimal</span></span> decimalNum <span class="token operator">=</span> <span class="token number">99.9999M</span><span class="token punctuation">;</span>
|
||
</span><span class="code-line"><span class="token class-name"><span class="token keyword">char</span></span> letter <span class="token operator">=</span> <span class="token char">'D'</span><span class="token punctuation">;</span>
|
||
</span><span class="code-line"><span class="token class-name"><span class="token keyword">bool</span></span> @<span class="token keyword">bool</span> <span class="token operator">=</span> <span class="token boolean">true</span><span class="token punctuation">;</span>
|
||
</span><span class="code-line"><span class="token class-name"><span class="token keyword">string</span></span> site <span class="token operator">=</span> <span class="token string">"jaywcjlove.github.io"</span><span class="token punctuation">;</span>
|
||
</span><span class="code-line"><span class="token class-name"><span class="token keyword">var</span></span> num <span class="token operator">=</span> <span class="token number">999</span><span class="token punctuation">;</span>
|
||
</span><span class="code-line"><span class="token class-name"><span class="token keyword">var</span></span> str <span class="token operator">=</span> <span class="token string">"999"</span><span class="token punctuation">;</span>
|
||
</span><span class="code-line"><span class="token class-name"><span class="token keyword">var</span></span> bo <span class="token operator">=</span> <span class="token boolean">false</span><span class="token punctuation">;</span>
|
||
</span></code></pre>
|
||
</div></div></div><div class="wrap h3body-not-exist"><div class="wrap-header h3wrap"><h3 id="注释"><a aria-hidden="true" tabindex="-1" href="#注释"><span class="icon icon-link"></span></a>注释</h3><div class="wrap-body">
|
||
<pre class="language-cs"><code class="language-cs code-highlight"><span class="code-line"><span class="token comment">// 单行注释</span>
|
||
</span><span class="code-line">
|
||
</span><span class="code-line"><span class="token comment">/*
|
||
</span></span><span class="code-line"><span class="token comment"> * 多行
|
||
</span></span><span class="code-line"><span class="token comment"> * 注释
|
||
</span></span><span class="code-line"><span class="token comment"> */</span>
|
||
</span><span class="code-line">
|
||
</span><span class="code-line"><span class="token comment">// TODO:向IDE中的任务列表添加注释(VS、Rider都支持)</span>
|
||
</span><span class="code-line">
|
||
</span><span class="code-line"><span class="token doc-comment comment">/// XML 单行注释,用于文档</span>
|
||
</span><span class="code-line">
|
||
</span><span class="code-line"><span class="token comment">/**
|
||
</span></span><span class="code-line"><span class="token comment"> * XML 多行注释,
|
||
</span></span><span class="code-line"><span class="token comment"> * 用于文档
|
||
</span></span><span class="code-line"><span class="token comment"> */</span>
|
||
</span></code></pre>
|
||
</div></div></div><div class="wrap h3body-not-exist"><div class="wrap-header h3wrap"><h3 id="字符串"><a aria-hidden="true" tabindex="-1" href="#字符串"><span class="icon icon-link"></span></a>字符串</h3><div class="wrap-body">
|
||
<pre class="language-cs"><code class="language-cs code-highlight"><span class="code-line"><span class="token class-name"><span class="token keyword">string</span></span> first <span class="token operator">=</span> <span class="token string">"John"</span><span class="token punctuation">;</span>
|
||
</span><span class="code-line"><span class="token class-name"><span class="token keyword">string</span></span> last <span class="token operator">=</span> <span class="token string">"Doe"</span><span class="token punctuation">;</span>
|
||
</span><span class="code-line"><span class="token comment">// 字符串连接</span>
|
||
</span><span class="code-line"><span class="token class-name"><span class="token keyword">string</span></span> name <span class="token operator">=</span> first <span class="token operator">+</span> <span class="token string">" "</span> <span class="token operator">+</span> last<span class="token punctuation">;</span>
|
||
</span><span class="code-line">Console<span class="token punctuation">.</span><span class="token function">WriteLine</span><span class="token punctuation">(</span>name<span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token comment">// => John Doe</span>
|
||
</span></code></pre>
|
||
<p>查看: <a href="#c-%E5%AD%97%E7%AC%A6%E4%B8%B2">C#字符串</a></p>
|
||
</div></div></div><div class="wrap h3body-not-exist"><div class="wrap-header h3wrap"><h3 id="用户输入"><a aria-hidden="true" tabindex="-1" href="#用户输入"><span class="icon icon-link"></span></a>用户输入</h3><div class="wrap-body">
|
||
<pre class="language-cs"><code class="language-cs code-highlight"><span class="code-line line-number" line="1">Console<span class="token punctuation">.</span><span class="token function">WriteLine</span><span class="token punctuation">(</span><span class="token string">"Enter number:"</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
|
||
</span><span class="code-line line-number" line="2"><span class="token keyword">if</span><span class="token punctuation">(</span><span class="token keyword">int</span><span class="token punctuation">.</span><span class="token function">TryParse</span><span class="token punctuation">(</span>Console<span class="token punctuation">.</span><span class="token function">ReadLine</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">,</span><span class="token keyword">out</span> <span class="token class-name"><span class="token keyword">int</span></span> input<span class="token punctuation">)</span><span class="token punctuation">)</span>
|
||
</span><span class="code-line line-number" line="3"><span class="token punctuation">{</span>
|
||
</span><span class="code-line line-number" line="4"> <span class="token comment">// 输入验证</span>
|
||
</span><span class="code-line line-number" line="5"> Console<span class="token punctuation">.</span><span class="token function">WriteLine</span><span class="token punctuation">(</span><span class="token interpolation-string"><span class="token string">$"You entered </span><span class="token interpolation"><span class="token punctuation">{</span><span class="token expression language-csharp">input</span><span class="token punctuation">}</span></span><span class="token string">"</span></span><span class="token punctuation">)</span><span class="token punctuation">;</span>
|
||
</span><span class="code-line line-number" line="6"><span class="token punctuation">}</span>
|
||
</span></code></pre>
|
||
</div></div></div><div class="wrap h3body-not-exist"><div class="wrap-header h3wrap"><h3 id="条件判断"><a aria-hidden="true" tabindex="-1" href="#条件判断"><span class="icon icon-link"></span></a>条件判断</h3><div class="wrap-body">
|
||
<pre class="language-cs"><code class="language-cs code-highlight"><span class="code-line"><span class="token class-name"><span class="token keyword">int</span></span> j <span class="token operator">=</span> <span class="token number">10</span><span class="token punctuation">;</span>
|
||
</span><span class="code-line"><span class="token keyword">if</span> <span class="token punctuation">(</span>j <span class="token operator">==</span> <span class="token number">10</span><span class="token punctuation">)</span> <span class="token punctuation">{</span>
|
||
</span><span class="code-line"> Console<span class="token punctuation">.</span><span class="token function">WriteLine</span><span class="token punctuation">(</span><span class="token string">"I get printed"</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
|
||
</span><span class="code-line"><span class="token punctuation">}</span> <span class="token keyword">else</span> <span class="token keyword">if</span> <span class="token punctuation">(</span>j <span class="token operator">></span> <span class="token number">10</span><span class="token punctuation">)</span> <span class="token punctuation">{</span>
|
||
</span><span class="code-line"> Console<span class="token punctuation">.</span><span class="token function">WriteLine</span><span class="token punctuation">(</span><span class="token string">"I don't"</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
|
||
</span><span class="code-line"><span class="token punctuation">}</span> <span class="token keyword">else</span> <span class="token punctuation">{</span>
|
||
</span><span class="code-line"> Console<span class="token punctuation">.</span><span class="token function">WriteLine</span><span class="token punctuation">(</span><span class="token string">"I also don't"</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
|
||
</span><span class="code-line"><span class="token punctuation">}</span>
|
||
</span></code></pre>
|
||
</div></div></div><div class="wrap h3body-not-exist"><div class="wrap-header h3wrap"><h3 id="数组"><a aria-hidden="true" tabindex="-1" href="#数组"><span class="icon icon-link"></span></a>数组</h3><div class="wrap-body">
|
||
<pre class="language-cs"><code class="language-cs code-highlight"><span class="code-line"><span class="token class-name"><span class="token keyword">char</span><span class="token punctuation">[</span><span class="token punctuation">]</span></span> chars <span class="token operator">=</span> <span class="token keyword">new</span> <span class="token constructor-invocation class-name"><span class="token keyword">char</span></span><span class="token punctuation">[</span><span class="token number">10</span><span class="token punctuation">]</span><span class="token punctuation">;</span>
|
||
</span><span class="code-line">chars<span class="token punctuation">[</span><span class="token number">0</span><span class="token punctuation">]</span> <span class="token operator">=</span> <span class="token char">'a'</span><span class="token punctuation">;</span>
|
||
</span><span class="code-line">chars<span class="token punctuation">[</span><span class="token number">1</span><span class="token punctuation">]</span> <span class="token operator">=</span> <span class="token char">'b'</span><span class="token punctuation">;</span>
|
||
</span><span class="code-line"><span class="token class-name"><span class="token keyword">string</span><span class="token punctuation">[</span><span class="token punctuation">]</span></span> letters <span class="token operator">=</span> <span class="token punctuation">{</span><span class="token string">"A"</span><span class="token punctuation">,</span> <span class="token string">"B"</span><span class="token punctuation">,</span> <span class="token string">"C"</span><span class="token punctuation">}</span><span class="token punctuation">;</span>
|
||
</span><span class="code-line"><span class="token class-name"><span class="token keyword">int</span><span class="token punctuation">[</span><span class="token punctuation">]</span></span> mylist <span class="token operator">=</span> <span class="token punctuation">{</span><span class="token number">100</span><span class="token punctuation">,</span> <span class="token number">200</span><span class="token punctuation">}</span><span class="token punctuation">;</span>
|
||
</span><span class="code-line"><span class="token class-name"><span class="token keyword">bool</span><span class="token punctuation">[</span><span class="token punctuation">]</span></span> answers <span class="token operator">=</span> <span class="token punctuation">{</span><span class="token boolean">true</span><span class="token punctuation">,</span> <span class="token boolean">false</span><span class="token punctuation">}</span><span class="token punctuation">;</span>
|
||
</span></code></pre>
|
||
</div></div></div><div class="wrap h3body-not-exist"><div class="wrap-header h3wrap"><h3 id="循环"><a aria-hidden="true" tabindex="-1" href="#循环"><span class="icon icon-link"></span></a>循环</h3><div class="wrap-body">
|
||
<pre class="language-cs"><code class="language-cs code-highlight"><span class="code-line"><span class="token class-name"><span class="token keyword">int</span><span class="token punctuation">[</span><span class="token punctuation">]</span></span> numbers <span class="token operator">=</span> <span class="token punctuation">{</span><span class="token number">1</span><span class="token punctuation">,</span> <span class="token number">2</span><span class="token punctuation">,</span> <span class="token number">3</span><span class="token punctuation">,</span> <span class="token number">4</span><span class="token punctuation">,</span> <span class="token number">5</span><span class="token punctuation">}</span><span class="token punctuation">;</span>
|
||
</span><span class="code-line"><span class="token keyword">for</span><span class="token punctuation">(</span><span class="token class-name"><span class="token keyword">int</span></span> i <span class="token operator">=</span> <span class="token number">0</span><span class="token punctuation">;</span> i <span class="token operator"><</span> numbers<span class="token punctuation">.</span>Length<span class="token punctuation">;</span> i<span class="token operator">++</span><span class="token punctuation">)</span> <span class="token punctuation">{</span>
|
||
</span><span class="code-line"> Console<span class="token punctuation">.</span><span class="token function">WriteLine</span><span class="token punctuation">(</span>numbers<span class="token punctuation">[</span>i<span class="token punctuation">]</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
|
||
</span><span class="code-line"><span class="token punctuation">}</span>
|
||
</span></code></pre>
|
||
<hr>
|
||
<pre class="language-cs"><code class="language-cs code-highlight"><span class="code-line"><span class="token keyword">foreach</span><span class="token punctuation">(</span><span class="token class-name"><span class="token keyword">int</span></span> num <span class="token keyword">in</span> numbers<span class="token punctuation">)</span> <span class="token punctuation">{</span>
|
||
</span><span class="code-line"> Console<span class="token punctuation">.</span><span class="token function">WriteLine</span><span class="token punctuation">(</span>num<span class="token punctuation">)</span><span class="token punctuation">;</span>
|
||
</span><span class="code-line"><span class="token punctuation">}</span>
|
||
</span></code></pre>
|
||
</div></div></div></div></div><div class="wrap h2body-exist"><div class="wrap-header h2wrap"><h2 id="c-数据类型"><a aria-hidden="true" tabindex="-1" href="#c-数据类型"><span class="icon icon-link"></span></a>C# 数据类型</h2><div class="wrap-body">
|
||
</div></div><div class="h2wrap-body"><div class="wrap h3body-not-exist col-span-2"><div class="wrap-header h3wrap"><h3 id="原始数据类型"><a aria-hidden="true" tabindex="-1" href="#原始数据类型"><span class="icon icon-link"></span></a>原始数据类型</h3><div class="wrap-body">
|
||
<!--rehype:wrap-class=col-span-2-->
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<table class="show-header"><thead><tr><th>关键字</th><th>名称</th><th>System 别名</th><th>占用空间(Byte)</th><th>数据范围</th></tr></thead><tbody><tr><td>bool</td><td>布尔型</td><td>Boolean</td><td>1</td><td>true/false</td></tr><tr><td>sbyte</td><td>有符号字节型</td><td>SByte</td><td>1</td><td>-128 ~ 127</td></tr><tr><td>byte</td><td>字节型</td><td>Byte</td><td>1</td><td>0 ~ 255</td></tr><tr><td>short</td><td>短整型</td><td>Int16</td><td>2</td><td>-32,768 ~ 32,767</td></tr><tr><td>ushort</td><td>无符号短整型</td><td>UInt16</td><td>2</td><td>0 ~ 65,535</td></tr><tr><td>int</td><td>整型</td><td>Int32</td><td>4</td><td>-2,147,483,648 ~ 2,147,483,647</td></tr><tr><td>uint</td><td>无符号整型</td><td>UInt32</td><td>4</td><td>0 ~ 4,294,967,295</td></tr><tr><td>long</td><td>长整型</td><td>Int64</td><td>8</td><td>-2^63 ~ 2^63-1</td></tr><tr><td>ulong</td><td>无符号长整型</td><td>UInt64</td><td>8</td><td>0 ~ 2^64-1</td></tr><tr><td>char</td><td>字符型</td><td>Char</td><td>8</td><td>UTF-16 所编码的字符</td></tr><tr><td>float</td><td>单精度浮点型</td><td>Single</td><td>4</td><td>±1.5x10^45 ~ ±3.4x10^38</td></tr><tr><td>double</td><td>双精度浮点型</td><td>Double</td><td>8</td><td>±5.0x10^-324 ~ ±1.7x10^308</td></tr><tr><td>nint</td><td>指针型</td><td>IntPtr</td><td>与指针相同</td><td>与指针相同(受操作系统和处理器位宽影响)</td></tr><tr><td>nuint</td><td>无符号指针型</td><td>UIntPtr</td><td>与指针相同</td><td>与指针相同(受操作系统和处理器位宽影响)</td></tr></tbody></table>
|
||
<!--rehype:className=show-header-->
|
||
</div></div></div><div class="wrap h3body-not-exist"><div class="wrap-header h3wrap"><h3 id="基本数据类型"><a aria-hidden="true" tabindex="-1" href="#基本数据类型"><span class="icon icon-link"></span></a>基本数据类型</h3><div class="wrap-body">
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<table class="show-header"><thead><tr><th>关键字</th><th>名称</th><th>System 别名</th><th>说明</th></tr></thead><tbody><tr><td>(除指针型外的全部原始数据类型)</td><td></td><td></td><td>原始数据类型都是值类型,基本数据类型包含部分本质上是引用的数据类型</td></tr><tr><td>string</td><td>字符串</td><td>String</td><td>可变长度</td></tr><tr><td>decimal</td><td>十进制浮点数</td><td>Decimal</td><td>适合处理货币等计算,16字节长,不遵循 IEEE 754 关于浮点数的规则</td></tr></tbody></table>
|
||
<!--rehype:className=show-header-->
|
||
</div></div></div></div></div><div class="wrap h2body-exist"><div class="wrap-header h2wrap"><h2 id="c-字符串"><a aria-hidden="true" tabindex="-1" href="#c-字符串"><span class="icon icon-link"></span></a>C# 字符串</h2><div class="wrap-body">
|
||
</div></div><div class="h2wrap-body"><div class="wrap h3body-not-exist"><div class="wrap-header h3wrap"><h3 id="字符串连接"><a aria-hidden="true" tabindex="-1" href="#字符串连接"><span class="icon icon-link"></span></a>字符串连接</h3><div class="wrap-body">
|
||
<pre class="language-cs"><code class="language-cs code-highlight"><span class="code-line"><span class="token class-name"><span class="token keyword">string</span></span> first <span class="token operator">=</span> <span class="token string">"John"</span><span class="token punctuation">;</span>
|
||
</span><span class="code-line"><span class="token class-name"><span class="token keyword">string</span></span> last <span class="token operator">=</span> <span class="token string">"Doe"</span><span class="token punctuation">;</span>
|
||
</span><span class="code-line"><span class="token class-name"><span class="token keyword">string</span></span> name <span class="token operator">=</span> first <span class="token operator">+</span> <span class="token string">" "</span> <span class="token operator">+</span> last<span class="token punctuation">;</span>
|
||
</span><span class="code-line">Console<span class="token punctuation">.</span><span class="token function">WriteLine</span><span class="token punctuation">(</span>name<span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token comment">// => John Doe</span>
|
||
</span></code></pre>
|
||
</div></div></div><div class="wrap h3body-not-exist"><div class="wrap-header h3wrap"><h3 id="字符串插值"><a aria-hidden="true" tabindex="-1" href="#字符串插值"><span class="icon icon-link"></span></a>字符串插值</h3><div class="wrap-body">
|
||
<pre class="language-cs"><code class="language-cs code-highlight"><span class="code-line"><span class="token class-name"><span class="token keyword">string</span></span> first <span class="token operator">=</span> <span class="token string">"John"</span><span class="token punctuation">;</span>
|
||
</span><span class="code-line"><span class="token class-name"><span class="token keyword">string</span></span> last <span class="token operator">=</span> <span class="token string">"Doe"</span><span class="token punctuation">;</span>
|
||
</span><span class="code-line"><span class="token class-name"><span class="token keyword">string</span></span> name <span class="token operator">=</span> <span class="token interpolation-string"><span class="token string">$"</span><span class="token interpolation"><span class="token punctuation">{</span><span class="token expression language-csharp">first</span><span class="token punctuation">}</span></span><span class="token string"> </span><span class="token interpolation"><span class="token punctuation">{</span><span class="token expression language-csharp">last</span><span class="token punctuation">}</span></span><span class="token string">"</span></span><span class="token punctuation">;</span>
|
||
</span><span class="code-line">Console<span class="token punctuation">.</span><span class="token function">WriteLine</span><span class="token punctuation">(</span>name<span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token comment">// => John Doe</span>
|
||
</span></code></pre>
|
||
</div></div></div><div class="wrap h3body-not-exist row-span-2"><div class="wrap-header h3wrap"><h3 id="字符串成员"><a aria-hidden="true" tabindex="-1" href="#字符串成员"><span class="icon icon-link"></span></a>字符串成员</h3><div class="wrap-body">
|
||
<!--rehype:wrap-class=row-span-2-->
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<table class="show-header"><thead><tr><th align="left">成员</th><th>说明</th></tr></thead><tbody><tr><td align="left"><code>Length</code></td><td>返回字符串长度的属性</td></tr><tr><td align="left"><code>Compare()</code></td><td>比较两个字符串的静态方法</td></tr><tr><td align="left"><code>Contains()</code></td><td>确定字符串是否包含特定的子字符串</td></tr><tr><td align="left"><code>Equals()</code></td><td>确定两个字符串是否具有相同的字符数据</td></tr><tr><td align="left"><code>Format()</code></td><td>通过 {0} 表示法和使用其他原语格式化字符串</td></tr><tr><td align="left"><code>Trim()</code></td><td>从尾随和前导字符中删除特定字符的所有实例。 默认删除前导和尾随空格</td></tr><tr><td align="left"><code>Split()</code></td><td>删除提供的字符并从两侧的剩余字符中创建一个数组</td></tr></tbody></table>
|
||
<!--rehype:className=show-header-->
|
||
</div></div></div><div class="wrap h3body-not-exist"><div class="wrap-header h3wrap"><h3 id="逐字字符串"><a aria-hidden="true" tabindex="-1" href="#逐字字符串"><span class="icon icon-link"></span></a>逐字字符串</h3><div class="wrap-body">
|
||
<pre class="wrap-text"><code class="language-cs code-highlight"><span class="code-line line-number" line="1"><span class="token class-name"><span class="token keyword">string</span></span> longString <span class="token operator">=</span> <span class="token string">@"I can type any characters in here !#@$%^&*()__+ '' \n \t except double quotes and I will be taken literally. I even work with multiple lines."</span><span class="token punctuation">;</span>
|
||
</span></code></pre>
|
||
<!--rehype:className=wrap-text-->
|
||
</div></div></div><div class="wrap h3body-not-exist"><div class="wrap-header h3wrap"><h3 id="成员示例"><a aria-hidden="true" tabindex="-1" href="#成员示例"><span class="icon icon-link"></span></a>成员示例</h3><div class="wrap-body">
|
||
<pre class="language-cs"><code class="language-cs code-highlight"><span class="code-line"><span class="token comment">// 使用 System.String 的属性</span>
|
||
</span><span class="code-line"><span class="token class-name"><span class="token keyword">string</span></span> lengthOfString <span class="token operator">=</span> <span class="token string">"How long?"</span><span class="token punctuation">;</span>
|
||
</span><span class="code-line">lengthOfString<span class="token punctuation">.</span>Length <span class="token comment">// => 9</span>
|
||
</span><span class="code-line"><span class="token comment">// 使用 System.String 的方法</span>
|
||
</span><span class="code-line">lengthOfString<span class="token punctuation">.</span><span class="token function">Contains</span><span class="token punctuation">(</span><span class="token string">"How"</span><span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token comment">// => true</span>
|
||
</span></code></pre>
|
||
</div></div></div><div class="wrap h3body-not-exist"><div class="wrap-header h3wrap"><h3 id="频繁字符串拼接"><a aria-hidden="true" tabindex="-1" href="#频繁字符串拼接"><span class="icon icon-link"></span></a>频繁字符串拼接</h3><div class="wrap-body">
|
||
<pre class="language-cs"><code class="language-cs code-highlight"><span class="code-line"><span class="token class-name"><span class="token keyword">var</span></span> sb <span class="token operator">=</span> <span class="token keyword">new</span> <span class="token constructor-invocation class-name">StringBuilder</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
|
||
</span><span class="code-line"><span class="token keyword">for</span> <span class="token punctuation">(</span><span class="token class-name"><span class="token keyword">int</span></span> i <span class="token operator">=</span> <span class="token number">0</span><span class="token punctuation">;</span> i <span class="token operator"><</span> <span class="token number">100</span><span class="token punctuation">;</span> i<span class="token operator">++</span><span class="token punctuation">)</span>
|
||
</span><span class="code-line"><span class="token punctuation">{</span>
|
||
</span><span class="code-line"> sb<span class="token punctuation">.</span><span class="token function">Append</span><span class="token punctuation">(</span>i<span class="token punctuation">.</span><span class="token function">ToString</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
|
||
</span><span class="code-line"><span class="token punctuation">}</span>
|
||
</span><span class="code-line">Console<span class="token punctuation">.</span><span class="token function">WriteLine</span><span class="token punctuation">(</span>sb<span class="token punctuation">.</span><span class="token function">ToString</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
|
||
</span><span class="code-line"><span class="token comment">// => 123456789....</span>
|
||
</span></code></pre>
|
||
<p>对于频繁拼接字符串的场景(如:成百上千次循环),使用 <code>System.Text.StringBuilder</code> 提升性能</p>
|
||
</div></div></div><div class="wrap h3body-not-exist col-span-2"><div class="wrap-header h3wrap"><h3 id="原始字符串文本"><a aria-hidden="true" tabindex="-1" href="#原始字符串文本"><span class="icon icon-link"></span></a>原始字符串文本</h3><div class="wrap-body">
|
||
<!--rehype:wrap-class=col-span-2-->
|
||
<pre class="language-cs"><code class="language-cs code-highlight"><span class="code-line"><span class="token comment">// C#11 语法, 至少3个双引号(""")开头和结尾,内容可以输入任何原始字符</span>
|
||
</span><span class="code-line"><span class="token comment">// 单行: 左引号,右引号,内容 三者同行</span>
|
||
</span><span class="code-line"><span class="token class-name"><span class="token keyword">string</span></span> singleLine <span class="token operator">=</span> <span class="token string">""</span>"Content begin <span class="token string">"Hello World!"</span> end<span class="token punctuation">.</span><span class="token string">""</span>"<span class="token punctuation">;</span>
|
||
</span><span class="code-line">
|
||
</span><span class="code-line"><span class="token comment">// 多行:左引号,右引号各一行,内容需与右引号缩进对齐</span>
|
||
</span><span class="code-line"><span class="token class-name"><span class="token keyword">string</span></span> multiLine <span class="token operator">=</span> <span class="token string">""</span>"
|
||
</span><span class="code-line"> Content begin <span class="token string">"Hello World!"</span> <span class="token operator">/</span>\n<span class="token operator"><</span><span class="token operator">></span><span class="token string">""</span> end<span class="token punctuation">.</span>
|
||
</span><span class="code-line"> <span class="token string">""</span>"<span class="token punctuation">;</span>
|
||
</span><span class="code-line">Console<span class="token punctuation">.</span><span class="token function">WriteLine</span><span class="token punctuation">(</span>multiLine<span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token comment">// => Content begin "Hello World!" /\n<>"" end.</span>
|
||
</span></code></pre>
|
||
</div></div></div><div class="wrap h3body-not-exist"><div class="wrap-header h3wrap"><h3 id="字符串操作"><a aria-hidden="true" tabindex="-1" href="#字符串操作"><span class="icon icon-link"></span></a>字符串操作</h3><div class="wrap-body">
|
||
<pre class="language-cs"><code class="language-cs code-highlight"><span class="code-line"><span class="token comment">//字符串分割</span>
|
||
</span><span class="code-line"><span class="token class-name"><span class="token keyword">string</span></span> Name <span class="token operator">=</span> <span class="token string">"字A符A串A分A割"</span><span class="token punctuation">;</span>
|
||
</span><span class="code-line"><span class="token class-name"><span class="token keyword">string</span><span class="token punctuation">[</span><span class="token punctuation">]</span></span> Names<span class="token operator">=</span>Name<span class="token punctuation">.</span><span class="token function">Split</span><span class="token punctuation">(</span><span class="token keyword">new</span> <span class="token constructor-invocation class-name"><span class="token keyword">char</span><span class="token punctuation">[</span><span class="token punctuation">]</span></span> <span class="token punctuation">{</span> <span class="token char">'A'</span> <span class="token punctuation">}</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
|
||
</span><span class="code-line"><span class="token comment">//会以A为媒介把字符串分成若干份</span>
|
||
</span><span class="code-line"><span class="token keyword">for</span> <span class="token punctuation">(</span><span class="token class-name"><span class="token keyword">int</span></span> i <span class="token operator">=</span> <span class="token number">0</span><span class="token punctuation">;</span> i <span class="token operator"><</span> Names<span class="token punctuation">.</span>Length<span class="token punctuation">;</span> i<span class="token operator">++</span><span class="token punctuation">)</span>
|
||
</span><span class="code-line"><span class="token punctuation">{</span>
|
||
</span><span class="code-line"> Console<span class="token punctuation">.</span><span class="token function">Write</span><span class="token punctuation">(</span>Names<span class="token punctuation">[</span>i<span class="token punctuation">]</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
|
||
</span><span class="code-line"><span class="token punctuation">}</span>
|
||
</span><span class="code-line"><span class="token comment">//-----------------------------------</span>
|
||
</span><span class="code-line"><span class="token comment">//字符串截取</span>
|
||
</span><span class="code-line"><span class="token class-name"><span class="token keyword">string</span></span> Str <span class="token operator">=</span> <span class="token string">"字符串截取"</span><span class="token punctuation">;</span>
|
||
</span><span class="code-line">Str <span class="token operator">=</span> Str<span class="token punctuation">.</span><span class="token function">Substring</span><span class="token punctuation">(</span><span class="token number">2</span><span class="token punctuation">,</span> <span class="token number">1</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
|
||
</span><span class="code-line">Console<span class="token punctuation">.</span><span class="token function">WriteLine</span><span class="token punctuation">(</span>Str<span class="token punctuation">)</span><span class="token punctuation">;</span>
|
||
</span><span class="code-line"><span class="token comment">//输出结果“串”,意为从第二个下标开始截取一位字符</span>
|
||
</span><span class="code-line"><span class="token comment">//-----------------------------------</span>
|
||
</span><span class="code-line"><span class="token comment">//字符串替换</span>
|
||
</span><span class="code-line"><span class="token class-name"><span class="token keyword">string</span></span> Rep <span class="token operator">=</span> <span class="token string">"字符1替换"</span><span class="token punctuation">;</span>
|
||
</span><span class="code-line">Rep <span class="token operator">=</span> Rep<span class="token punctuation">.</span><span class="token function">Replace</span><span class="token punctuation">(</span><span class="token string">"1"</span><span class="token punctuation">,</span> <span class="token string">"串"</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
|
||
</span><span class="code-line">Console<span class="token punctuation">.</span><span class="token function">WriteLine</span><span class="token punctuation">(</span>Rep<span class="token punctuation">)</span><span class="token punctuation">;</span>
|
||
</span><span class="code-line"><span class="token comment">//会把字符中的 “1”替换成“串”</span>
|
||
</span></code></pre>
|
||
</div></div></div><div class="wrap h3body-not-exist col-span-2"><div class="wrap-header h3wrap"><h3 id="逻辑运算"><a aria-hidden="true" tabindex="-1" href="#逻辑运算"><span class="icon icon-link"></span></a>逻辑运算</h3><div class="wrap-body">
|
||
<!--rehype:wrap-class=col-span-2-->
|
||
<pre class="language-cs"><code class="language-cs code-highlight"><span class="code-line"><span class="token comment">//或运算, 与运算, 非运算</span>
|
||
</span><span class="code-line"><span class="token class-name"><span class="token keyword">bool</span></span> A <span class="token operator">=</span> <span class="token boolean">true</span><span class="token punctuation">;</span>
|
||
</span><span class="code-line"><span class="token class-name"><span class="token keyword">bool</span></span> B <span class="token operator">=</span> <span class="token boolean">false</span><span class="token punctuation">;</span>
|
||
</span><span class="code-line"><span class="token class-name"><span class="token keyword">bool</span></span> Or <span class="token operator">=</span> A <span class="token operator">||</span> B<span class="token punctuation">;</span> <span class="token comment">// = A | B</span>
|
||
</span><span class="code-line"><span class="token class-name"><span class="token keyword">bool</span></span> And <span class="token operator">=</span> A <span class="token operator">&&</span> B<span class="token punctuation">;</span> <span class="token comment">// = A & B</span>
|
||
</span><span class="code-line"><span class="token class-name"><span class="token keyword">bool</span></span> Not <span class="token operator">=</span> <span class="token operator">!</span>A<span class="token punctuation">;</span>
|
||
</span><span class="code-line"><span class="token comment">// ||,&& 与 |,& 分别为逻辑运算和条件逻辑运算, 两者的区别在于, </span>
|
||
</span><span class="code-line"><span class="token comment">// 前者仅在必要时才会计算右侧的值, 后者始终计算右侧的值. 例如:</span>
|
||
</span><span class="code-line"><span class="token class-name"><span class="token keyword">bool</span></span> C <span class="token operator">=</span> <span class="token boolean">false</span><span class="token punctuation">;</span>
|
||
</span><span class="code-line"><span class="token class-name"><span class="token keyword">bool</span></span> D <span class="token operator">=</span> <span class="token boolean">true</span><span class="token punctuation">;</span>
|
||
</span><span class="code-line"><span class="token return-type class-name"><span class="token keyword">bool</span></span> <span class="token function">CalcD</span><span class="token punctuation">(</span><span class="token punctuation">)</span> <span class="token punctuation">{</span>
|
||
</span><span class="code-line"> D <span class="token operator">=</span> <span class="token operator">!</span>D<span class="token punctuation">;</span>
|
||
</span><span class="code-line"> <span class="token keyword">return</span> D<span class="token punctuation">;</span>
|
||
</span><span class="code-line"><span class="token punctuation">}</span>
|
||
</span><span class="code-line"><span class="token class-name"><span class="token keyword">bool</span></span> E <span class="token operator">=</span> C <span class="token operator">&&</span> <span class="token function">CalcD</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token comment">// C: false, D: false, E: false</span>
|
||
</span><span class="code-line"><span class="token class-name"><span class="token keyword">bool</span></span> F <span class="token operator">=</span> C <span class="token operator">&</span> <span class="token function">CalcD</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token comment">// C:false, D: true, F: false</span>
|
||
</span><span class="code-line"><span class="token comment">// 两种运算方法稍有不同, 计算结果始终相同, 但第二种可能造成其他影响.</span>
|
||
</span><span class="code-line"><span class="token comment">//异或运算</span>
|
||
</span><span class="code-line"><span class="token class-name"><span class="token keyword">bool</span></span> Xor <span class="token operator">=</span> A <span class="token operator">^</span> B<span class="token punctuation">;</span>
|
||
</span></code></pre>
|
||
<p>C# 中的逻辑运算支持可空布尔类型运算. 注意条件逻辑运算不支持可空布尔类型.</p>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<table class="show-header"><thead><tr><th align="left">x</th><th>y</th><th>x & y</th><th>x | y</th><th>x ^ y</th><th>! x</th></tr></thead><tbody><tr><td align="left">true</td><td>true</td><td>true</td><td>true</td><td>false</td><td>false</td></tr><tr><td align="left">true</td><td>false</td><td>false</td><td>true</td><td>true</td><td>false</td></tr><tr><td align="left">true</td><td>null</td><td>null</td><td>true</td><td>null</td><td>false</td></tr><tr><td align="left">false</td><td>true</td><td>false</td><td>true</td><td>true</td><td>true</td></tr><tr><td align="left">false</td><td>false</td><td>false</td><td>false</td><td>false</td><td>true</td></tr><tr><td align="left">false</td><td>null</td><td>false</td><td>null</td><td>null</td><td>true</td></tr><tr><td align="left">null</td><td>true</td><td>null</td><td>true</td><td>null</td><td>null</td></tr><tr><td align="left">null</td><td>false</td><td>false</td><td>null</td><td>null</td><td>null</td></tr><tr><td align="left">null</td><td>null</td><td>null</td><td>null</td><td>null</td><td>null</td></tr></tbody></table>
|
||
<!--rehype:className=show-header-->
|
||
</div></div></div></div></div><div class="wrap h2body-exist"><div class="wrap-header h2wrap"><h2 id="杂项"><a aria-hidden="true" tabindex="-1" href="#杂项"><span class="icon icon-link"></span></a>杂项</h2><div class="wrap-body">
|
||
</div></div><div class="h2wrap-body"><div class="wrap h3body-not-exist col-span-3"><div class="wrap-header h3wrap"><h3 id="常用-net-概念"><a aria-hidden="true" tabindex="-1" href="#常用-net-概念"><span class="icon icon-link"></span></a>常用 .NET 概念</h3><div class="wrap-body">
|
||
<!--rehype:wrap-class=col-span-3-->
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<table class="show-header"><thead><tr><th align="left">概念</th><th>中文名</th><th>定义</th></tr></thead><tbody><tr><td align="left">Runtime</td><td>运行时</td><td>执行给定的已编译代码单元所需的服务集合</td></tr><tr><td align="left">Common Language Runtime (CLR)</td><td>通用语言运行库</td><td>主要定位、加载和托管 .NET 对象。<br>CLR 还处理内存管理、应用程序托管、线程协调、执行安全检查和其他低级细节</td></tr><tr><td align="left">Managed code</td><td>托管代码</td><td>在 <code>.NET</code> 运行时编译和运行的代码。 C#/F#/VB 就是例子</td></tr><tr><td align="left">Unmanaged code</td><td>非托管代码</td><td>直接编译为机器代码且不能由 .NET 运行时直接托管的代码。<br>不包含空闲内存管理、垃圾收集等。从 C/C++ 创建的 DLL 就是示例</td></tr></tbody></table>
|
||
<!--rehype:className=show-header-->
|
||
</div></div></div></div></div></div></div><footer class="footer-wrap"><footer class="max-container">© 2022 Kenny Wang.</footer></footer><script src="../data.js?v=1.3.4" defer></script><script src="../js/fuse.min.js?v=1.3.4" defer></script><script src="../js/main.js?v=1.3.4" defer></script><div id="mysearch"><div class="mysearch-box"><div class="mysearch-input"><div><svg xmlns="http://www.w3.org/2000/svg" height="1em" width="1em" viewBox="0 0 18 18">
|
||
<path fill="currentColor" d="M17.71,16.29 L14.31,12.9 C15.4069846,11.5024547 16.0022094,9.77665502 16,8 C16,3.581722 12.418278,0 8,0 C3.581722,0 0,3.581722 0,8 C0,12.418278 3.581722,16 8,16 C9.77665502,16.0022094 11.5024547,15.4069846 12.9,14.31 L16.29,17.71 C16.4777666,17.8993127 16.7333625,18.0057983 17,18.0057983 C17.2666375,18.0057983 17.5222334,17.8993127 17.71,17.71 C17.8993127,17.5222334 18.0057983,17.2666375 18.0057983,17 C18.0057983,16.7333625 17.8993127,16.4777666 17.71,16.29 Z M2,8 C2,4.6862915 4.6862915,2 8,2 C11.3137085,2 14,4.6862915 14,8 C14,11.3137085 11.3137085,14 8,14 C4.6862915,14 2,11.3137085 2,8 Z"></path>
|
||
</svg><input id="mysearch-input" type="search" placeholder="搜索" autocomplete="off"><div class="mysearch-clear"></div></div><button id="mysearch-close" type="button">搜索</button></div><div class="mysearch-result"><div id="mysearch-menu"></div><div id="mysearch-content"></div></div></div></div></body>
|
||
</html>
|