我有這個練習。我不知道問題出在哪裏,但是我一直在收到錯誤 - 請問有人能幫我解決什麼問題?無法從int轉換爲char錯誤c#
未處理的異常:System.InvalidCastException:無法強制類型爲'System.String []'的對象鍵入'System.IConvertible'。
at System.Convert.ToInt32(Object value)
at exercise_4.Program.Main(String [] args)in D:\ Courses \ c#\ beginner \ visual studio \ section 6 exercise \ exercise 4 \ exercise 4 \ Program的.cs:行20
這是寫在我的控制檯
寫一個程序,並要求用戶提供逗號列表分隔的數字(如5,1,9,2,10) 。如果列表爲空或包含少於5個數字,則顯示「無效列表」並要求用戶重試;否則,顯示列表中最小的3個數字。
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace exercise_4
{
class Program
{
static void Main(string[] args)
{
while (true)
{
Console.WriteLine("write numbers seperated with coma");
var numbers = new List<int>();
var input = (Console.ReadLine());
var value = input.Split(',');
var conv =Convert.ToInt32(value);
numbers.Add(conv);
if (value.Length < 5)
{
Console.WriteLine("invalid list!! retry");
continue;
}
else
{
numbers.Sort();
Console.WriteLine(numbers[0] , numbers[1], numbers [2]);
}
}
}
}
}
感謝您的回答。
Split將返回數組。您不能將數組轉換爲num。您可能需要將每個數字轉換爲int。 – Kajal
Split返回一個字符串數組,即value是一個數組,是一個字符串數組。 ToInt32在這裏需要一個字符串(或者一般來說任何實現IConvertible接口的類型),這是行不通的。您需要循環查看價值,轉換每個條目並將其添加到您的數字列表中。 – ckuri