{"id":1091,"date":"2018-07-07T14:48:53","date_gmt":"2018-07-07T06:48:53","guid":{"rendered":"http:\/\/170.106.148.50\/?p=1091"},"modified":"2018-07-05T13:00:21","modified_gmt":"2018-07-05T05:00:21","slug":"c-%e5%9f%ba%e7%a1%80%e9%80%9f%e6%88%90","status":"publish","type":"post","link":"https:\/\/www.195440.com\/1091","title":{"rendered":"C# \u57fa\u7840\u901f\u6210"},"content":{"rendered":"
C# \u662f\u4e00\u4e2a\u73b0\u4ee3\u7684\u3001\u901a\u7528\u7684\u3001\u9762\u5411\u5bf9\u8c61\u7684\u7f16\u7a0b\u8bed\u8a00\u3002<\/p>\n
C# \u662f\u4e13\u4e3a\u516c\u5171\u8bed\u8a00\u57fa\u7840\u7ed3\u6784\uff08CLI\uff09\u8bbe\u8ba1\u7684\u3002CLI \u7531\u53ef\u6267\u884c\u4ee3\u7801\u548c\u8fd0\u884c\u65f6\u73af\u5883\u7ec4\u6210\uff0c\u5141\u8bb8\u5728\u4e0d\u540c\u7684\u8ba1\u7b97\u673a\u5e73\u53f0\u548c\u4f53\u7cfb\u7ed3\u6784\u4e0a\u4f7f\u7528\u5404\u79cd\u9ad8\u7ea7\u8bed\u8a00\u3002<\/p>\n
\u4e0b\u9762\u5217\u51fa\u4e86 C# \u6210\u4e3a\u4e00\u79cd\u5e7f\u6cdb\u5e94\u7528\u7684\u4e13\u4e1a\u8bed\u8a00\u7684\u539f\u56e0\uff1a<\/p>\n
\/\/ \u5355\u884c\u6ce8\u91ca\u4ee5 \/\/ \u5f00\u59cb<\/span>\r\n\/*<\/span>\r\n\u591a\u884c\u6ce8\u91ca\u662f\u8fd9\u6837\u7684<\/span>\r\n*\/<\/span>\r\n\/\/\/ <summary><\/span>\r\n\/\/\/ XML\u6587\u6863\u6ce8\u91ca<\/span>\r\n\/\/\/ <\/summary><\/span>\r\n\r\n\/\/ \u58f0\u660e\u5e94\u7528\u7528\u5230\u7684\u547d\u540d\u7a7a\u95f4<\/span>\r\nusing<\/span> System<\/span>;<\/span>\r\nusing<\/span> System.Collections.Generic<\/span>;<\/span>\r\nusing<\/span> System.Data.Entity<\/span>;<\/span>\r\nusing<\/span> System.Dynamic<\/span>;<\/span>\r\nusing<\/span> System.Linq<\/span>;<\/span>\r\nusing<\/span> System.Linq.Expressions<\/span>;<\/span>\r\nusing<\/span> System.Net<\/span>;<\/span>\r\nusing<\/span> System.Threading.Tasks<\/span>;<\/span>\r\nusing<\/span> System.IO<\/span>;<\/span>\r\n\r\n\/\/ \u5b9a\u4e49\u4f5c\u7528\u57df\uff0c\u5c06\u4ee3\u7801\u7ec4\u7ec7\u6210\u5305<\/span>\r\nnamespace<\/span> Learning<\/span>\r\n{<\/span>\r\n \/\/ \u6bcf\u4e2a .cs \u6587\u4ef6\u81f3\u5c11\u9700\u8981\u5305\u542b\u4e00\u4e2a\u548c\u6587\u4ef6\u540d\u76f8\u540c\u7684\u7c7b<\/span>\r\n \/\/ \u4f60\u53ef\u4ee5\u4e0d\u8fd9\u4e48\u5e72\uff0c\u4f46\u662f\u8fd9\u6837\u4e0d\u597d\u3002<\/span>\r\n public<\/span> class<\/span> LearnCSharp<\/span>\r\n {<\/span>\r\n \/\/ \u57fa\u672c\u8bed\u6cd5 - \u5982\u679c\u4f60\u4ee5\u524d\u7528\u8fc7 Java \u6216 C++ \u7684\u8bdd\uff0c\u53ef\u4ee5\u76f4\u63a5\u8df3\u5230\u540e\u6587\u300c\u6709\u8da3\u7684\u7279\u6027\u300d<\/span>\r\n public<\/span> static<\/span> void<\/span> Syntax<\/span>()<\/span> \r\n {<\/span>\r\n \/\/ \u4f7f\u7528 Console.WriteLine \u6253\u5370\u4fe1\u606f<\/span>\r\n Console<\/span>.<\/span>WriteLine<\/span>(<\/span>\"Hello World\"<\/span>);<\/span>\r\n Console<\/span>.<\/span>WriteLine<\/span>(<\/span>\r\n \"Integer: \"<\/span> +<\/span> 10<\/span> +<\/span>\r\n \" Double: \"<\/span> +<\/span> 3.14<\/span> +<\/span>\r\n \" Boolean: \"<\/span> +<\/span> true<\/span>);<\/span>\r\n\r\n \/\/ \u4f7f\u7528 Console.Write \u6253\u5370\uff0c\u4e0d\u5e26\u6362\u884c\u7b26\u53f7<\/span>\r\n Console<\/span>.<\/span>Write<\/span>(<\/span>\"Hello \"<\/span>);<\/span>\r\n Console<\/span>.<\/span>Write<\/span>(<\/span>\"World\"<\/span>);<\/span>\r\n\r\n \/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/<\/span>\r\n \/\/ \u7c7b\u578b\u548c\u53d8\u91cf<\/span>\r\n \/\/<\/span>\r\n \/\/ \u4f7f\u7528 <type> <name> \u5b9a\u4e49\u53d8\u91cf<\/span>\r\n \/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/<\/span>\r\n\r\n \/\/ Sbyte - \u6709\u7b26\u53f7 8-bit \u6574\u6570<\/span>\r\n \/\/ (-128 <= sbyte <= 127)<\/span>\r\n sbyte<\/span> fooSbyte<\/span> =<\/span> 100<\/span>;<\/span>\r\n\r\n \/\/ Byte - \u65e0\u7b26\u53f7 8-bit \u6574\u6570<\/span>\r\n \/\/ (0 <= byte <= 255)<\/span>\r\n byte<\/span> fooByte<\/span> =<\/span> 100<\/span>;<\/span>\r\n\r\n \/\/ Short - 16-bit \u6574\u6570<\/span>\r\n \/\/ \u6709\u7b26\u53f7 - (-32,768 <= short <= 32,767)<\/span>\r\n \/\/ \u65e0\u7b26\u53f7 - (0 <= ushort <= 65,535)<\/span>\r\n short<\/span> fooShort<\/span> =<\/span> 10000<\/span>;<\/span>\r\n ushort<\/span> fooUshort<\/span> =<\/span> 10000<\/span>;<\/span>\r\n\r\n \/\/ Integer - 32-bit \u6574\u6570<\/span>\r\n int<\/span> fooInt<\/span> =<\/span> 1<\/span>;<\/span> \/\/ (-2,147,483,648 <= int <= 2,147,483,647)<\/span>\r\n uint<\/span> fooUint<\/span> =<\/span> 1<\/span>;<\/span> \/\/ (0 <= uint <= 4,294,967,295)<\/span>\r\n\r\n \/\/ Long - 64-bit \u6574\u6570<\/span>\r\n long<\/span> fooLong<\/span> =<\/span> 100000L<\/span>;<\/span> \/\/ (-9,223,372,036,854,775,808 <= long <= 9,223,372,036,854,775,807)<\/span>\r\n ulong<\/span> fooUlong<\/span> =<\/span> 100000L<\/span>;<\/span> \/\/ (0 <= ulong <= 18,446,744,073,709,551,615)<\/span>\r\n \/\/ \u6570\u5b57\u9ed8\u8ba4\u4e3a int \u6216 uint \uff08\u53d6\u51b3\u4e8e\u5c3a\u5bf8\uff09<\/span>\r\n \/\/ \u4f7f\u7528 L \u6807\u660e\u53d8\u91cf\u503c\u7c7b\u578b\u4e3along \u6216 ulong<\/span>\r\n\r\n \/\/ Double - \u53cc\u7cbe\u5ea6 64-bit IEEE 754 \u6d6e\u70b9\u6570<\/span>\r\n double<\/span> fooDouble<\/span> =<\/span> 123.4<\/span>;<\/span> \/\/ \u7cbe\u5ea6: 15-16 \u4f4d<\/span>\r\n\r\n \/\/ Float - \u5355\u7cbe\u5ea6 32-bit IEEE 754 \u6d6e\u70b9\u6570<\/span>\r\n float<\/span> fooFloat<\/span> =<\/span> 234.5f<\/span>;<\/span> \/\/ \u7cbe\u5ea6: 7 \u4f4d<\/span>\r\n \/\/ \u4f7f\u7528 f \u6807\u660e\u53d8\u91cf\u503c\u7c7b\u578b\u4e3afloat<\/span>\r\n\r\n \/\/ Decimal - 128-bits \u6570\u636e\u7c7b\u578b\uff0c\u6bd4\u5176\u4ed6\u6d6e\u70b9\u7c7b\u578b\u7cbe\u5ea6\u66f4\u9ad8<\/span>\r\n \/\/ \u9002\u5408\u8d22\u52a1\u3001\u91d1\u878d<\/span>\r\n decimal<\/span> fooDecimal<\/span> =<\/span> 150.3<\/span>m<\/span>;<\/span>\r\n\r\n \/\/ \u5e03\u5c14\u503c - true & false<\/span>\r\n bool<\/span> fooBoolean<\/span> =<\/span> true<\/span>;<\/span> \/\/ \u6216 false<\/span>\r\n\r\n \/\/ Char - \u5355\u4e2a 16-bit Unicode \u5b57\u7b26<\/span>\r\n char<\/span> fooChar<\/span> =<\/span> 'A'<\/span>;<\/span>\r\n\r\n \/\/ \u5b57\u7b26\u4e32 -- \u548c\u524d\u9762\u7684\u57fa\u672c\u7c7b\u578b\u4e0d\u540c\uff0c\u5b57\u7b26\u4e32\u4e0d\u662f\u503c\uff0c\u800c\u662f\u5f15\u7528\u3002<\/span>\r\n \/\/ \u8fd9\u610f\u5473\u7740\u4f60\u53ef\u4ee5\u5c06\u5b57\u7b26\u4e32\u8bbe\u4e3anull\u3002<\/span>\r\n string<\/span> fooString<\/span> =<\/span> \"\\\"escape\\\" quotes and add \\n (new lines) and \\t (tabs)\"<\/span>;<\/span>\r\n Console<\/span>.<\/span>WriteLine<\/span>(<\/span>fooString<\/span>);<\/span>\r\n\r\n \/\/ \u4f60\u53ef\u4ee5\u901a\u8fc7\u7d22\u5f15\u8bbf\u95ee\u5b57\u7b26\u4e32\u7684\u6bcf\u4e2a\u5b57\u7b26\uff1a<\/span>\r\n char<\/span> charFromString<\/span> =<\/span> fooString<\/span>[<\/span>1<\/span>];<\/span> \/\/ => 'e'<\/span>\r\n \/\/ \u5b57\u7b26\u4e32\u4e0d\u53ef\u4fee\u6539: fooString[1] = 'X' \u662f\u884c\u4e0d\u901a\u7684;<\/span>\r\n\r\n \/\/ \u6839\u636e\u5f53\u524d\u7684locale\u8bbe\u5b9a\u6bd4\u8f83\u5b57\u7b26\u4e32\uff0c\u5927\u5c0f\u5199\u4e0d\u654f\u611f<\/span>\r\n string<\/span>.<\/span>Compare<\/span>(<\/span>fooString<\/span>,<\/span> \"x\"<\/span>,<\/span> StringComparison<\/span>.<\/span>CurrentCultureIgnoreCase<\/span>);<\/span>\r\n\r\n \/\/ \u57fa\u4e8esprintf\u7684\u5b57\u7b26\u4e32\u683c\u5f0f\u5316<\/span>\r\n string<\/span> fooFs<\/span> =<\/span> string<\/span>.<\/span>Format<\/span>(<\/span>\"Check Check, {0} {1}, {0} {1:0.0}\"<\/span>,<\/span> 1<\/span>,<\/span> 2<\/span>);<\/span>\r\n\r\n \/\/ \u65e5\u671f\u548c\u683c\u5f0f<\/span>\r\n DateTime<\/span> fooDate<\/span> =<\/span> DateTime<\/span>.<\/span>Now<\/span>;<\/span>\r\n Console<\/span>.<\/span>WriteLine<\/span>(<\/span>fooDate<\/span>.<\/span>ToString<\/span>(<\/span>\"hh:mm, dd MMM yyyy\"<\/span>