程序不会编译java.lang.ClassNotFoundException

时间:2016-09-12 23:06:42

标签: java eclipse compiler-errors

大家好我是新手。请帮帮我。

该计划是:

import java.util.Scanner.*;
import java.lang.*;
public class HexToDecimalFromWeb{
public static void main (String [] args) {
    Scanner input = new Scanner(System.in);
    printHeader();
    while (true) {
        String hex = input.next("Enter a hexadecimal number: ");
        int dec = Integer.parseInt(hex, 16);
        if (dec == SENTINEL) {
            break;
        }
        System.out.println(hex + " hex = " +  
         Integer.toString(dec)+ "decimal");
    }
}
private static void printHeader() {
    System.out.println("This program converts hexadecimal to decimal.");
   System.out. println("Enter 0 to stop.");
}
private static final int SENTINEL = 0;
}

我得到的错误是:

java.lang.NoClassDefFoundError: HexToDecimalFromWeb
Caused by: java.lang.ClassNotFoundException: HexToDecimalFromWeb
at java.net.URLClassLoader$1.run(URLClassLoader.java:202)

这是什么原因?

我认为这可能是Eclipse的问题,因为其他一些程序也不会运行。

2 个答案:

答案 0 :(得分:0)

这条线坏了:

 Integer.toString(dec)+decimal");

添加"像这样 - >

 Integer.toString(dec)+"decimal");

答案 1 :(得分:0)

问题出在以下几行:

String hex = input.next("Enter a hexadecimal number: ");

Java扫描器方法next()不接受随机String作为其参数。它既可以没有参数,也可以没有参数,例如字符串模式或模式模式。

这些是next()方法的声明:

public String next()  
public String next(String pattern)  
public String next(Pattern pattern) 
相关问题