El código que se proporciona a continuación está dando un error de que en b[3] no se puede convertir de int a cadena
static void Main(string[] args) { int[] b = new int[5] { 1, 7, 8, 9, 2 }; Console.WriteLine(b[3],b[4]); }mientras que el código que se proporciona a continuación funciona correctamente sin ningún problema
int[] b = new int[5] { 1, 7, 8, 9, 2 }; Console.WriteLine($"{b[3]} {b[4]}");Console.WriteLine no es adecuado para simplemente imprimir varios argumentos pasados (como lo hace print en python, por ejemplo). Las sobrecargas de Console.WriteLine con 2 parámetros ( 1 , 2 ) requieren que el primer parámetro sea una cadena que contenga una cadena de formato compuesto y el segundo parámetro se usará para llenar los marcadores de posición en esta cadena de formato.
Si desea imprimir varios elementos, debe combinarlos en una cadena manualmente. Por ejemplo:
Console.WriteLine($"{b[3]} {b[4]}");string.Join (más conveniente con colecciones): Console.WriteLine(string.Join(" ", new []{ b[3], b[4]}));o use la cadena de formato:
Console.WriteLine("{0} {1}", b[3], b[4]);o
Console.WriteLine("{0} {1}", new object[]{b[3], b[4]}); // better used with reference typesConsole.WriteLine espera que se imprima un parámetro. Estás pasando 2 parámetros.
Puedes cambiar a:
static void Main(string[] args) { int[] b = new int[5] { 1, 7, 8, 9, 2 }; Console.WriteLine(b[3]); Console.WriteLine(b[4]); }O mejor:
static void Main(string[] args) { int[] b = new int[5] { 1, 7, 8, 9, 2 }; Console.WriteLine($"{b[3]} {b[4]}"); } En este caso, paso un parámetro con string interpolation .