java - IsPrime 方法有死代码并且不返回 int
问题描述
我想创建一个 java 方法来检查用户输入的 int 数是否为素数。但是,我收到“死代码”和“此方法必须返回 int 类型的结果”。有帮助吗?
public static int isPrime(int first)
{
for (int i = first - 1; i > 1; i--)
if (first%i == 0){
int prime = 1;
return prime;
}
else{
int notPrime = 0;
return notPrime;
}
}
解决方案
将其复制并粘贴到编辑器中后,很明显这i--
是导致出现死代码警告的部分。这样做的原因是因为您的for
循环将在第一次迭代期间返回,并且您的部分代码i--
将永远不会被执行(死代码)。
除此之外,其他答案和评论中提到的代码中还有其他一些问题。
推荐阅读
- javascript - 滑块未显示所有图像
- python-3.x - 检索源页面后,Scrapy Crawler 多个域完成且没有错误
- amazon-web-services - AWS 上的 kubernetes 在 pod 中获取区域名称
- css - CSS 表单对齐按钮和复选框
- reactjs - 如何在 react-boilerplate 中添加 jsx 文件?
- ruby-on-rails - 在 Rails 显示页面中下载 PDF,每次显示不同的 PDF
- sql - SELECT 语句涉及三个不同的表
- javascript - React+Jest - 测试异步组件并等待挂载
- typescript - 将 url 编码的内容解析为 JSON
- c# - 使用 autofac 注册泛型类型