Greeting by Name
Добър вечер колеги имам проблем с задачата ,накрая след надписа Hello,Nakov трябва да има "!" някаква идея как да е вмъкна в кода
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace _03.Greeting_by_Name
{
class Program
{
static void Main(string[] args)
{
var name = Console.ReadLine();
Console.Write("Hello, ");
Console.WriteLine(name);
}
}
}
И по този начин стна колега благодаря,само малко разяснение ако може.
1. $ по каква причина се вмъква
Това се използва за т.нар. стрингова интерполация (същия пример, който ти бях дал). Слагайки $ преди отварящата кавичка, всъщност "казваш", че следва някакъв малко по-специален синтаксис. Разбира се става и с примера, който колегата е дал, но много често с този, който използва $ се постига по-лесна четимост, а и както виждаш се изписва един ред вместо три. Има и още един начин за изписване, общо стават три:
1. Console.WriteLine("Hello, " + name + "!");
2. Console.WriteLine("Hello, {0}!", name);
3. Console.WriteLine($"Hello, {name}!");
Трите правят абсолютно едно и също, можеш да ги използваш когато искаш. Аз лично най-много използва третия, но има ситуации, в които и вторият е полезен. Как работи той: изписваш каквото ти трябва в кавичките, като в къдравите скоби слагаш едни индекси. След това изброяваш променливите в реда, в който ти трябват. Тези индекси съпоставят изброените променливите. Важно тук е да се отбележи, че първата няма да е с индекс 1, а 0. Например:
string name = "Pesho";
int age = 25;
Console.WriteLine("Hello, {0}! You are {1} years old", name, age);
// Изход: Hello, Pesho! You are 25 years old
Надявам се, че бях достатъчно изчерпателен, ако има нещо - питай :)