0

私のクラスで、先生はこれに似たものを見せてくれました。Visual Studio は、文字列には解析の定義がないと言っています。授業で先生がそう言ったのを覚えていますsomething.parse(thingyouwanttoparse)。コンマなし。オンラインで検索しましたが、すべてのオプションが先生が示したものと異なります。私は何を間違っていますか?

if (!ValidMenuOption)
{
    string errorMsg = "\n\t Option must be ";
    int iteration = 1;
    while (iteration <=numAvailable)
    {
        errorMsg = errorMsg + string.parse(iteration) + ", ";
        iteration += 1
    }
    errorMsg = errorMsg + "or 0";
    Console.WriteLine(errorMsg);
} //end if
4

1 に答える 1

3

解析とは、文字列を何かに変換することです。書式設定は解析の反対であり、C# では int を呼び出して書式設定できます.ToString()。文字列を連結している場合は、このメソッドの呼び出しをオフのままにしておくこともできるため、コードはおそらく次のようになります。

if (!ValidMenuOption){
    string errorMsg = "\n\t Option must be ";
    int iteration = 1;
    while (iteration <=numAvailable) {                        
        errorMsg = errorMsg + iteration + ", ";
        iteration+=1;
    }
    errorMsg = errorMsg + "or 0"; 
    Console.WriteLine(errorMsg);
}

派手になりたい場合は、次のようにすることもできます。

if (!ValidMenuOption){
    string errorMsg = "\n\t Option must be "+string.Join(", ", Enumerable.Range(1, numAvailable)) + " or 0"; 
    Console.WriteLine(errorMsg);
}
于 2013-04-23T00:11:01.490 に答える