A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 党传才 中级黑马   /  2012-4-14 19:01  /  1820 人查看  /  7 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

public class array3 {
public static void main(){
String s="I LOVE YOU ";
change.low(s);

change.sub(s);

}
} class change{
public static void low(String s){
String a;
a=s.toLowerCase();
System.out.println(a);

}
public static void sub(String s){
String c;
c=s.substring(2);
System.out.println(c);
}
}


哪儿出错了?

7 个回复

倒序浏览
public static void main()这句话的String[] args呢?
把它改为public static void main(String[] args);

评分

参与人数 1技术分 +1 收起 理由
贠(yun)靖 + 1

查看全部评分

回复 使用道具 举报
楼上正解啊,主函数那句话可不能随便乱改~
回复 使用道具 举报
主函数没写String [] args
public static void main(String[] args){

}
回复 使用道具 举报
主函数main()方法的参数是一个String对象的数组,即使你程序中不用到args,java编译器也要求你必须写上,因为args要用来存储命令行参数。

代码中可能还有点不严谨的问题,
你代码中使用了内部类,这个完全没有必要。内部类在继承多个类的时候能起到很好的效果,你的代码完全可以不用内部类,直接使用方法就可以了。
把方法尽量申明成private的,这样能提高安全性。

修改后代码如下:
public class array3 {

        public static void main(String[] args) {
                String s = "I LOVE YOU ";
                low(s);
                sub(s);
        }

        private static void low(String s) {
                String a;
                a = s.toLowerCase();
                System.out.println(a);
        }

        private static void sub(String s) {
                String c;
                c = s.substring(2);
                System.out.println(c);
        }
}

希望对你有所帮助。{:soso_e113:}

评分

参与人数 1技术分 +1 收起 理由
岳民喜 + 1

查看全部评分

回复 使用道具 举报
String [] args

代表String类型的数组,args可以随便写(但是已经成为大家默认)

主函数也是函数,这里不传值的话, java.lang.NoSuchMethodError: main  错误
回复 使用道具 举报
array3   请将首字母大写好吗?
请在Array3中将main函数中声明字符串数组。譬如:String[] args。

希望能解答你的疑惑。一起加油,共同进步。
回复 使用道具 举报
public class()
{
public static void main(String [] args)
{

}
}
这个是程序入口的标准写法,楼主入口没有写好啊,所以执行不了。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马