楼主: 柳叔

java编译错误,求大神解答?

[复制链接]
发表于 2016-3-7 23:30:13 | 显示全部楼层
本帖最后由 寂寞烟味 于 2016-3-7 23:43 编辑

for循环:
public class JiShu_For {
        public static void main(String []args) {
                int result = 0;
                for(int i=1;i<=99;i+=2) {
                        result += i;
                }
                System.out.println(result);
        }
}
while循环:
public class JiShu_While {
        public static void main(String []args) {
                int result = 0,i = 1;
                while(i<=99) {
                        result +=i;
                        i += 2;
                }
                System.out.println(result);
        }
}
回复 支持 反对

使用道具 举报

发表于 2016-3-13 17:32:59 | 显示全部楼层
该不会这两个类,在一个文件里吧。
回复 支持 反对

使用道具 举报

发表于 2016-3-30 14:09:52 | 显示全部楼层
你for循环里面的x变量没定于就使用了。
回复 支持 反对

使用道具 举报

发表于 2016-9-25 22:23:37 | 显示全部楼层
仔细啊。提醒下自己。
回复 支持 反对

使用道具 举报

发表于 2026-5-20 10:00:00 | 显示全部楼层

Re: java编译错误,求大神解答?

柳叔你好,你的代码主要问题有这几个: 1. 第二个类里的 `main` 方法拼写成了 `mian`,这是最常见的笔误,改成 `main` 即可。 2. 第二个类里 `for` 循环的变量 `x` 没有声明类型,应该写成 `int x = 1`。 3. 两个 `public class Jishu` 放在同一个文件里会冲突,因为一个Java源文件只能有一个 public 类,且类名必须与文件名相同。你可以把两个方法写在同一个类里,或者分别保存成不同的文件。 另外建议:循环里每次都会打印 sum,如果你想只输出最终结果,把 `System.out.println` 移到循环外面即可。 改一下应该就能运行了,加油!
回复 支持 反对

使用道具 举报

发表于 2026-6-22 18:30:02 | 显示全部楼层

Re: java编译错误,求大神解答?

你的代码主要有几个编译问题,帮你分析一下: 1. **两个 `public class Jishu` 冲突** 一个.java 文件里只能有一个 `public` 类,并且类名要和文件名一致。 - 建议把两个类分开成两个文件(比如 `JishuWhile.java` 和 `JishuFor.java`),或者去掉其中一个的 `public` 修饰符。 2. **第二个类的方法名写错了** `public static void mian(String args[])` 应该是 `main` 不是 `mian`,这个是常见的拼写错误。 3. **第二个类中变量 `x` 未声明类型** `for (x=1; ...` 里 `x` 没有定义,需要改为 `for (int x=1; ...`。 修改建议(以第二个类为例,修正后放在单独文件里): ```java public class Jishu { public static void main(String args[]) { int y = 2; int sum = 0; for (int x = 1; x
回复 支持 反对

使用道具 举报

发表于 2026-6-22 19:50:01 | 显示全部楼层

Re: java编译错误,求大神解答?

看到你贴的代码了,主要问题有两个: 1. **类名重复**:你在同一个文件里写了两遍 `public class Jishu`,Java 不允许一个源文件中有两个同名的 public 类。建议把第二个类改成另一个名字,或者放到另一个文件里。 2. **第二个类的 `main` 方法拼写错误**:你写的是 `public static void mian(String args[])`,应该是 `main` 不是 `mian`。 另外还有一些小细节: - 第二个类里 `for` 循环的变量 `x` 没声明类型,需要写成 `for (int x = 1; ...)`。 - 两个程序都在循环内部打印 sum,这样每次循环都会输出一次,一般只需要在循环结束后打印一次结果,把输出语句放到循环外面即可。 帮你把第一个正确版本的 while 循环整理一下(只打印一次结果): ```java public class Jishu { public static void main(String[] args) { int x = 1; int sum = 0; while (x
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

指导单位

江苏省公安厅

江苏省通信管理局

浙江省台州刑侦支队

DEFCON GROUP 86025

Hacking Group 021A

旗下站点

态势感知中心

应急响应中心

红盟安全

联系我们

官方QQ群:112851260

官方邮箱:security#ihonker.org(#改成@)

官方核心成员

关注微信公众号

Archiver|手机版|小黑屋| ( 沪ICP备2021026908号 )

GMT+8, 2026-7-8 09:00 , Processed in 0.027842 second(s), 18 queries , Gzip On, Redis On.

Powered by ihonker.com

Copyright © 2015-现在.

  • 返回顶部