學習內容:C#;學習書籍:圖解教程(中文第四版)。 目錄:第二章 C#編程概述 > 2.7 從程式中輸出文本 > 2.7.5格式化數字字元串 學習感受: 我現在的工作中還沒有遇見這些的使用。 ...
學習內容:C#;學習書籍:圖解教程(中文第四版)。
目錄:第二章 C#編程概述 -----> 2.7 從程式中輸出文本 -----> 2.7.5格式化數字字元串
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace _2018_05_04_AM_1520_格式化數字字元串 { class Program { static void Main(string[] args) { /* * 格式化數字字元串 * 格式說明符的語法由3個欄位組成:索引號、對齊說明符、格式欄位(format field) * 格式:{ index , alignment :format } * index 為索引,是必需要填寫的,表示是哪一個需要進行格式化; * alignment 為對齊說明符,由自己決定是否需要填寫;是一個整數,其中正整數表示的是欄位右對齊,負整數表示的是左對齊,填寫的數字表示的是長度(寬度); * format 為格式欄位,來指定由index選擇的數字的表現形式;需註意冒號後面緊跟格式說明符,中間不能由空格。 * 格式說明符 是一個字母字元;精度說明符 是可以選擇是否需要,由1~2位數字組成。 * 具體請看下麵的例子 */ double first = 1234.56789; double second = -12.3456789; /* * 標準數字格式說明符 */ Console.WriteLine("格式說明符:");
Console.WriteLine("貨幣C、c(不區分大小寫) |{0, 15 :C}|{1, -15 :c3}|", first, second); /* * 把值格式化為貨幣,貨幣符號取決與程式所在的PC的區域自動設置 * 精度說明符 設置的是小數位的位數;如果不設置 精度說明符 那麼會自動取2位小數。 */
Console.WriteLine("十進位D、d(不區分大小寫) |{0, 15 :D}|{1, -15 :d4}|", 107, -29); /* * 十進位數字字元串,需要註意,只能和整數類型配合使用;如果是其他類型會報錯,提示格式說明符無效 * 精度說明符 設置的是整個字元串的位數;如果實際數字位數小於給出的精度說明位數,則在左邊補0。 */
Console.WriteLine("定點F、f(不區分大小寫) |{0, 15 :F}|{1, -15 :f3}|", first, second); /* * 帶有小數的十進位數字字元串 * 精度說明符 設置的是小數位的位數;如果不設置 精度說明符 那麼會自動取2位小數。 */
Console.WriteLine("常規G、g(不區分大小寫) |{0, 15 :G}|{1, -15 :g4}|", first, second); /* * 在沒有說明符的情況下,會根據值轉換為定點或科學記數法表示的緊湊形式 * 精度說明符 設置的是整個字元串的位數;如果實際數字位數小於給出的精度說明位數,並不會進行任何補0操作;不設置,則按原樣顯示 */
Console.WriteLine("十六進位X、x(區分大小寫) |{0, 15 :x5}|{1, -15 :X}|", 107, -29); /* * 十六進位數字的A~F會根據格式說明符的大小寫來進行匹配,X 匹配A~F ;x 匹配a~f * 精度說明符 設置的是整個字元串的位數;如果實際數字位數小於給出的精度說明位數,則在左邊補0。補充:字元串的位數是按轉成了十六進位的字元串的位數。 */
Console.WriteLine("數字N、n(不區分大小寫) |{0, 15 :N}|{0, -15 :n5}|", first, second); /* * 和定點相似,但在每三個數字的一組中有逗號或空格分隔符,從小數點向左數,取決於程式所在的PC的區域設置 * 精度說明符 設置的是小數位的位數;如果不設置 精度說明符 那麼會自動取2位小數。 */
Console.WriteLine("百分比P、p(不區分大小寫) |{0, 15 :P}|{1, -15 :p6}|", first, second); /* * 表示百分比,數字會乘以100 * 精度說明符 設置的是小數位的位數;如果不設置 精度說明符 那麼會自動取2位小數。 */
Console.WriteLine("往返過程R、r(不區分大小寫)|{0, 15 :R}|{1, -15 :r3}|", first, second); /* * 保證輸出字元串後,如果使用Parse方法將字元串轉化成數字,則該值與原始值一樣。 * 精度說明符 設置了也並沒有對數據有影響。 */
Console.WriteLine("科學記數法E、e(區分大小寫)|{0, 15 :E}|{1, -15 :e10}|", first, second); /* * 具有尾數和指數的科學記數法。指數前加的字母E 是根據說明符的大小寫進行匹配的 * 精度說明符 設置的是小數位的位數。 */
Console.ReadKey(); } } }
學習感受:
我現在的工作中還沒有遇見這些的使用。