当我尝试将字符串转换为 int 时,控制台输出 System.int32[]



我正在尝试输出一些与字符串在同一行的数字,方法是使用 split 将它们从字符串转换为 int im 并尝试首次转换,输出是 system.int32[]

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace ConsoleApplication2
{
class Program
{
    static void Main(string[] args)
    {
        int Websites = int.Parse(Console.ReadLine());
        int sectok = int.Parse(Console.ReadLine());
        string[] webnamearray = new string[Websites];
        int[] persums = new int[Websites];
        int one = 0;
        int two = 0;
        string datainput = "";
        for (int i = 0; i < Websites; i++)
        {
            datainput = Console.ReadLine();
            string[] split = datainput.Split(' ');
            webnamearray[i] = (split[0]);
            one = int.Parse(split[1]);
            two = int.Parse(split[2]);
            persums[i] = one * two;
            Console.WriteLine(persums);
        }
        for (int i = 0; i < Websites;i++)
        {
            Console.WriteLine(webnamearray[i]);
        }
    }
    }
    }

你写道:

Console.WriteLine(persums);

这是一个整数数组,这解释了为什么你在输出中看到它。

我认为相反,您想要的输出是(这是您刚刚创建的值(:

Console.WriteLine(persums[i]);

而不是如果你想把这个信息与名字一起放置,改变你的最后一个循环:

for (int i = 0; i < Websites;i++)
{
    Console.WriteLine(webnamearray[i] + " " + persums[i]);
}

最新更新