עיצוב מחרוזות
חלק מהיחידה יסודות במסלול ה-C# של Coddy. שיעור 63 מתוך 69.
ב-C#, String.Format() היא מתודה רבת עוצמה המשמשת ליצירת מחרוזות מעוצבות. היא מאפשרת לך לשלב טקסט עם משתנים באופן קריא וניתן להתאמה אישית. המתודה משתמשת במפרטי עיצוב כדי להגדיר כיצד יש להכניס משתנים למחרוזת.
בואו נלמד איך להשתמש בעיצוב מחרוזות ב-C#:
התחביר הבסיסי של String.Format() הוא:
string formattedString = String.Format("format_string", arg0, arg1, ...);כאשר:
format_string: מחרוזת שמכילה טקסט ומצייני עיצוב.arg0, arg1, ...: המשתנים שיש להכניס לתוךformat_string.
בואו נבחן את מפרטי הפורמט. המספרים בסוגריים המסולסלים מתייחסים למיקום של הארגומנטים:
{0}: מתייחס לארגומנט הראשון (arg0){1}: מתייחס לארגומנט השני (arg1){2}: מתייחס לארגומנט השלישי (arg2)- וכן הלאה...
בואו ננסה דוגמה פשוטה עם סוגים שונים של ארגומנטים:
string name = "Alice";
int age = 30;
double price = 19.99;
string formatted = String.Format("Name: {0}, Age: {1}, Price: {2}", name, age, price);
Console.WriteLine(formatted);לאחר הרצת הקוד הזה, תראה על המסך: Name: Alice, Age: 30, Price: 19.99
אפשר גם לשלוט בעיצוב בצורה מדויקת יותר באמצעות מפרטי עיצוב אחרי נקודתיים. מפרט העיצוב מורכב מאות (כמו F עבור מספר עשרוני בנקודה קבועה) ואחריה מספר אופציונלי לציון הדיוק:
// עצב מספר עם 2 ספרות אחרי הנקודה העשרונית
double number = 123.4567;
string formatted = String.Format("The value is {0:F2}", number);
Console.WriteLine(formatted);לאחר ביצוע הקוד הזה, תראו על המסך: The value is 123.46
אפשר להשתמש ב־F1, F2, F3 וכו׳ כדי לציין מספר שונה של ספרות אחרי הנקודה העשרונית
אתגר
קלצרו מתודה בשם CreateFormattedString שמקבלת את הארגומנטים הבאים:
- מחרוזת
productName. - מספר שלם
quantity. - מספר ממשי מסוג double
unitPrice.
המתודה צריכה להחזיר מחרוזת מעוצבת שמשלבת את הערכים האלה בפורמט הבא:
Product: [productName], Quantity: [quantity], Unit Price: [unitPrice]עצבו את unitPrice עם חמש ספרות אחרי הנקודה העשרונית, את quantity עם ספרה אחת אחרי הנקודה העשרונית (המירו אותו ל-double), והפכו את התו הראשון של productName לאות גדולה.
לדוגמה, אם productName הוא "laptop", quantity הוא 3, ו-unitPrice הוא 1299.9999, המתודה צריכה להחזיר:
Product: Laptop, Quantity: 3.0, Unit Price: 1299.99990כדי לחלץ את התו הראשון ולהשאיר אותו מטיפוס String ולא מטיפוס char, השתמשו ב-
str.Substring(0,1)
נסו בעצמכם
using System;
public class Program {
public static string CreateFormattedString(string productName, int quantity, double unitPrice) {
// כתבו את הקוד שלכם כאן
}
public static void Main(string[] args) {
string product = Console.ReadLine();
int qty = int.Parse(Console.ReadLine());
double price = double.Parse(Console.ReadLine());
string formattedString = CreateFormattedString(product, qty, price);
Console.WriteLine(formattedString);
}
}השיעור הזה כולל חידון קצר. התחילו את השיעור כדי לענות עליו ולעקוב אחרי ההתקדמות.
כל השיעורים ביחידה יסודות
4אופרטורים חלק 1
אופרטורים אריתמטייםאופרטור מודולוהגדלה/הקטנההגדלה/הקטנה אחרי הפעולהקיצורים אריתמטיים5אופרטורים חלק 2
אופרטורי השוואהאופרטורים לוגיים חלק 1אופרטורים לוגיים חלק 2סיכום — לוגיקה פשוטהאופרטורים לוגיים חלק 3תרגלו בעצמכם: קומפיילר C# אונליין