c# - 我如何从库调用方法到 C# 控制台

标签 c# methods class-library

我在新库中创建了一个方法 这是我的代码

namespace ClassLibrary1
{
    public class Class1
    {
        public static bool ISprime(int prime)
        {

            if (prime < 2)
                return false;
            else if (prime == 2)
                return true;
            else
            {
                for (int i = 2; i < prime; i++)
                {
                    if (prime % i == 0)
                        return false;
                    else
                        return true;
                }

            }
        }
    }
}
  1. 如何在我的控制台“program.cs”中调用该方法
  2. 我收到一条错误消息“错误 2 'ClassLibrary1.Class1.ISprime(int)':并非所有代码路径都返回一个值”

这是什么意思?

抱歉,我是一名新程序员。

最佳答案

1.) 通过执行以下操作调用该方法:

ClassLibrary1.Class1.ISprime(123);

Class1.ISprime(123);  // make sure to reference ClassLibrary1 at the top of your class

2.) 您需要在方法的最后返回一些值。我也改变了一些逻辑:

public static bool ISprime(int prime)
{
    if (prime == 1) 
        return false;
    if (prime == 2) 
        return true;

    for (int i = 2; i < Math.Sqrt(prime); ++i)  {
        if (prime % i == 0) 
            return false;
    }

    return true;
}

3.) 回答关于与逻辑不同之处的评论。尝试运行它,您会看到不同之处。

    for (int n = -10; n < 10; n++)
    {
        if (Class1.IsPrimeCorrect(n) != Class1.IsPrimeIncorrect(n))
        {
            Console.WriteLine(n);
        }
    }

关于c# - 我如何从库调用方法到 C# 控制台,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9389870/

相关文章:

c# - 创建一个 do while 循环,只要给出特定的用户输入就可以结束

c# - 正文中带有参数的 HttpClient 帖子

C++ 多维数组成员访问器

c# - 与另一个项目一起开发共享库,而不让它们位于同一个解决方案中

c# - 将数据从字符串值发布到 asp net core web api Controller 方法

c# - 获得 List<object> 之间差异的最快方法

Java 重写 throws 子句

C++编译问题;类方法

javascript - 在 Silverlight 类库中嵌入 JS 文件

c# - 在类库中嵌入 exe 文件