简体   繁体   English

无法在C#中将类型字符串隐式转换为int

[英]Cannot implicitly convert type string to int in C#

I am fairly new to c# and I can't figure this out. 我对C#相当陌生,我无法弄清楚。 The error says that I cannot convert string to int implicitly. 该错误表明我无法将字符串隐式转换为int。 Here is a snippet of my code. 这是我的代码片段。 Thanks! 谢谢!

    private static int GenerateLetters(int size, bool lowercase) //added a return type
    {
        {
        string randomLetters = string.Empty;
        Random r = new Random();

        for (int i = 0; i < size; i++)
        {
            randomLetters += Convert.ToChar(r.Next(65, 90));                
        }

        if (lowercase)
            return randomLetters.ToLower();
        else
            return randomLetters.ToString();
            }
        }

You should change return type of your method to string 您应该将方法的返回类型更改为string

private static string GenerateLetters(...)

By the way it would be better if you change your method like this: 顺便说一句,如果您这样更改方法会更好:

private static string GenerateLetters(int size, bool lowercase) //added a return type
{

     char[] chars = new char[size];
     Random r = new Random();

     for (int i = 0; i < size; i++)
     {
         chars[i] = Convert.ToChar(r.Next(65, 90));
     }

    if (lowercase)
           return new String(chars).ToLower();
     else
          return new String(chars);

}

change 更改

private static int GenerateLetters

to

private static string GenerateLetters

you are returning string but method has return parameter int. 您正在返回字符串,但是方法具有返回参数int。 What you are returning has to be compatible with method stub. 您返回的内容必须与方法存根兼容。

Read more about methods in c# at MSDN 在MSDN上了解有关C#中方法的更多信息

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM