gpt4 book ai didi

Java静态方法无法编译

转载 作者:行者123 更新时间:2023-12-01 16:40:35 25 4
gpt4 key购买 nike

当我编译此代码时出现以下消息。

ExtractChars(java.lang.String,int) in Question2 cannot be applied to ()

我应该解决什么问题?

谢谢。

import java.util.Scanner;

public class Question2
{

public static void main (String[] args)
{

ExtractChars();

}
public static String ExtractChars(String sOrg, int startPos)
{

Scanner scan = new Scanner (System.in);
String value = "";
System.out.print("Enter a string: ");
sOrg = scan.next();
System.out.print("/nEnter an integer: ");
startPos = scan.nextInt();
if (sOrg.length()<=startPos)
{

value = "";

}
else
{
for (int i=startPos; i<sOrg.length();i=i+2)
{

value = value + sOrg.charAt(i);

}
}

return value;
}
}

最佳答案

这是因为函数 ExtractChars 需要两个参数,但您没有传递任何参数。

编辑:

看起来您正在读取输入 sOrgstartPos 并且无需将它们作为参数传递,您可以将它们设为局部变量。

所以改变:

public static String ExtractChars(String sOrg, int startPos)
{
....

public static String ExtractChars()
{
String sOrg;
int startPos;
....

此外,您只是丢弃了 main 中函数 ExtractChars 的返回值。您可能希望将函数返回的提取字符(作为字符串)打印为:

System.out.println("Extracted Characters = " + ExtractChars());

在你的 main 中代替

ExtractChars();

关于Java静态方法无法编译,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3992690/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com