簡體   English   中英

將 int 轉換為 Char c#?

[英]Converting an int to a Char c#?

我希望能夠從運算符 M/F 讀取男性或女性的值,並為每個條目返回單獨的文本塊。

Char gender;
int TempValue;
Console.WriteLine("Please enter your name");
Console.CursorVisible=true;
String name = Console.ReadLine();
Console.WriteLine(" Greetings, faire travler {0} you are about to depart on a rather exciting adventure, but first are you male or female?", name);
Console.WriteLine("(M/F)");

TempValue = Console.Read();
Console.WriteLine("{0}", TempValue);
gender = Char.Parse(TempValue);

現在我收到一個錯誤,說我“無法從 'INT' 轉換為 'string',我真的不明白。因為我試圖將它解析為字符而不是字符串。

Char.Parse接受一個string作為它的參數,但TempValue被聲明為一個int 您可以使用ToString TempValue

gender = Char.Parse(TempValue.ToString());

或使用Convert.ToChar() ,它接受一個object

gender = Convert.ToChar(TempValue);

Console.Read()返回您輸入的字符的 ascii 值。 (在 'M' 的情況下,它是 77) char.Parse(TempValue)期望TempValue是一個string ,並且它只包含一個字符。 因此,這就是您將字符串“M”轉換為字符“M”的方法。 但是你沒有字符串“M”; 你有 int 77。
在這種情況下,您可以簡單地投射它:

char gender = (char)TempValue;

或者,您可以使用Console.ReadLine() ,它返回一個string ,然后取第一個字符:

string input = Console.ReadLine();
char gender = input[0];

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM