java - 如何在 java 中声明方法时修复“表达式的非法开始”错误
问题描述
我在一个类中声明了一个简单的方法,该方法检查一个数字是否为三角形,但在声明该方法时,编译器显示“表达式的非法开始”错误。下面是我的代码
import java.util.*;
import java.lang.*;
import java.io.*;
class Ideone
{
public static void main (String[] args) throws java.lang.Exception
{
int n ;
Scanner in = new Scanner (System.in) ;
n = in.nextInt() ;
static boolean isTriagular ()
{
int tn = 1 ;
while ( n <= tn )
{
if ( tn == n )
{
System.out.println("yes" ) ;
System.exit(0) ;
}
tn += ( tn + 1 ) ;
}
}
// your code goes here
}
}
Main.java:14:错误:表达式静态布尔 isTriagular () 的非法开始 ^
解决方案
您应该移出isTriangular
main 方法,然后在 main 方法中调用您的方法,如下所示:
import java.util.*;
import java.lang.*;
import java.io.*;
class Ideone
{
public static void main (String[] args) throws java.lang.Exception
{
int n ;
Scanner in = new Scanner (System.in) ;
n = in.nextInt() ;
// your code goes here
isTriagular();
}
static void isTriagular()
{
int tn = 1 ;
while ( n <= tn )
{
if ( tn == n )
{
System.out.println("yes" ) ;
System.exit(0) ;
}
tn += ( tn + 1 ) ;
}
}
}
我将类型更改isTriangular
为 avoid
因为您在将某些内容打印到控制台后退出整个程序。如果您从它返回一个结果以设置为等于另一个变量,它只需要是一个布尔值。
这方面的一个例子是:
boolean myResult = isTriangular();
推荐阅读
- javascript - 在角度 5 中验证表格内的输入文本用户输入
- spring-boot - Springboot中的流程指标没有出现
- spring-boot - 如何决定微服务的数量以及是否有通用的jar
- reactjs - 反应 | http-proxy-middleware 包不工作
- facebook - 如何将沙盒广告帐户添加到 BusinessManager?
- artifactory - Artifactory 自定义基本 URL 给出 404 页面未找到错误
- r - 我可以双击 visNetwork 图中的节点来运行函数吗?
- phpstorm - PhpStorm 不换行
- quickjs - quickJS 文档和/或评论良好的项目
- python - python的长文本中的特定单词搜索