lisliefor
发贴: 287
积分: 7
|
于 2006-05-29 15:15
首先声明,我很少在cmd下面编译java文件。所以,在尝试这样编译的时候,出现了这样的问题: 我把search文件,放在e:\目录下: E:\javac search.java 没问题,e:\下产生一个class文件。但我在输入这个命令的时候,抛出异常了: E:\java search * 异常名为java.lang.NoClassDefFoundError,我也尝试在serach前面加了路径(即:java e:\search *),没效果。好吧!我妥协。(有经验的朋友提醒一下我出的问题) 将程序改成这个样子(我使用Eclipse): package help;
import java.io.*;
public class search { public static void main(String[] args) { char c; Character c2; BufferedReader buff = new BufferedReader(new InputStreamReader(System.in)); String sc = ""; try{ sc = buff.readLine(); }catch(IOException e){ System.out.println; } for (int i = 1; i < 10000; i++) { if (i == 7) continue; c = (char) i; c2 = new Character; if (sc.equals(c2.toString())) { System.out.print(i + ": " + c); System.exit(0); } } } } 你在后台输入任何字符都能正常显示。 注:为什么当i等于7时,停止迭代——7对应的字符为空格。 如果注释了System.exit(0)语句,整个程序将在运行10000次迭代后结束,效率低下。而作者的想法是,在找到改字符对应的ascii值后结束。注释掉,没必要。
|