首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >java:25:类、接口或枚举应为public static void main(String s[]) {

java:25:类、接口或枚举应为public static void main(String s[]) {
EN

Stack Overflow用户
提问于 2012-07-21 01:38:33
回答 5查看 19.8K关注 0票数 2

我正在试着写一个程序来计算字符串的字数。

以下是我的代码,以及我的代码中出现的错误,我无法纠正它们:

代码语言:javascript
复制
import java.util.*;    
class string1 {
    public static int wordcount() {
        String str;
        Scanner s1= new Scanner(System.in);
        System.out.println("Enter String:");
        str=s1.nextLine();
        int count=WCount(str);
        System.out.println("Count="+count);
    }

    public static int WCount(String str) {
        int l=str.length();
        int count=0;
        for(int i=0;i<l;i++) {
            if(str.charAt(i)==' ')
                count++ ;
        }
        if(count>0) 
            count++ ;
        return(count);
    }
}
public static void main (String s[]) {
    string1 ss=new string1();
    ss.wordcount();
}

错误:

代码语言:javascript
复制
java:25: class, interface, or enum expected
public static void main(String s[]) {
          ^
C:\Users\coocl\Desktop\java\string1.java:27: class, interface, or enum expected
ss.wordcount();
^
C:\Users\coocl\Desktop\java\string1.java:28: class, interface, or enum expected}3 errors

Process completed.
EN

回答 5

Stack Overflow用户

发布于 2012-07-21 01:40:21

你的main不在课堂上。在类中声明它。

票数 5
EN

Stack Overflow用户

发布于 2012-07-21 01:40:23

main方法属于您的类。当您运行java来执行已编译的代码时,它将尝试运行属于您指定的类的main方法。更一般地说,方法不能在java中的类外部声明:所有方法都必须属于一个类。

请注意,因为您的方法wordcountWCount都是静态的,所以不需要创建string1实例来使用它们,只需在main中的类上调用它们:

代码语言:javascript
复制
string1.wordcount();

最后,在java中,类名通常以大写字母开头,例如String1,请参阅这些Naming Conventions

票数 4
EN

Stack Overflow用户

发布于 2012-07-21 01:40:30

在WCount之后有一个额外的}

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11584323

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档