当前位置: 首页 > 面试题库 >

线程“主”中的异常java.util.InputMismatchException

程正阳
2023-03-14
问题内容

我需要在Java中进行一次练习的帮助,也许我会在2小时内停留在此错误上。任何帮助都会很棒。

Exception in thread "main" java.util.InputMismatchException
    at java.util.Scanner.throwFor(Scanner.java:909)
    at java.util.Scanner.next(Scanner.java:1530)
    at java.util.Scanner.nextInt(Scanner.java:2160)
    at java.util.Scanner.nextInt(Scanner.java:2119)
    at prodavnica.Prodavnica.main(Prodavnica.java:60)
Java Result: 1


package prodavnica;

public class Proizvod {

    private String ime_proizvod;
    private static int cena;

    public Proizvod(String ime_proizvod, int cena) {
        this.ime_proizvod = ime_proizvod;
        this.cena=cena;
    }

    public String getIme_proizvod() {
        return ime_proizvod;
    }

    public void setIme_proizvod(String ime_proizvod) {
        this.ime_proizvod = ime_proizvod;
    }

    public static int getCena() {
        return cena;
    }

    public static void setCena(int cena) {
        Proizvod.cena = cena;
    }

    public void pecatiPodatoci(){
        System.out.println("Ime: "+ime_proizvod+" Cena: "+cena);
    }

}

和:

package prodavnica;

import java.util.Scanner;

public class Prodavnica {

    private String ime_prodavnica;
    private Proizvod proizvodi[]=new Proizvod[20];

    public Prodavnica(String ime_prodavnica) {
        this.ime_prodavnica = ime_prodavnica;
    }

    int br=0;

    public void dodadiProizvod(Proizvod p){
        proizvodi[br]=p;
        br++;
    }

      public Proizvod najskapProizvod(){

        Proizvod max=proizvodi[0];

        for(int r=0;r<proizvodi.length;r++){

            if(max.getCena()<proizvodi[r+1].getCena()){
                max=proizvodi[r+1];
            }
        }
        return max;

    }


    public static void main(String[] args) {
        Scanner input = new Scanner(System.in);


        Prodavnica pro1=new Prodavnica("Tinex");

        int n;

        System.out.println("Vnesete kolku proizvodi ke stavite: ");
        n=input.nextInt();



        String imer = input.nextLine();
        int cenar = input.nextInt();


        pro1.dodadiProizvod(new Proizvod(imer, cenar));


        System.out.println("Ime-pr: "+pro1.proizvodi[0].getIme_proizvod()+" Cena= "+pro1.proizvodi[0].getCena());
    }

}

我无法在Proizvod类的变量“ proizvodi”上输入字符串“ imer”或int“ cenar”。

有帮助吗?为什么我会收到此错误?谢谢!


问题答案:

扫描程序抛出此异常,以指示检索到的令牌与预期类型的​​模式不匹配,或者令牌超出预期类型的​​范围。

String imer = input.next();// Use for String Input
input.nextLine();//Use for next line of input
int cenar = input.nextInt();


 类似资料:
  • 问题内容: 该代码正在编译,但是当我们尝试执行该代码时,给出了“线程“ main”中的异常” Java.lang.NoSuchMethodError:main“ 问题答案: 该函数应这样声明

  • 问题内容: 我已经进行了大约一个小时的工作,并且对stackoverflow进行了问答,但是我没有找到解决问题的建议方案。很抱歉,如果这是重复的,但是找不到解决我特定问题的答案的任何重复问题。 我试图第一次从终端编写和编译Java程序(直到这一点为止,我一直在使用Eclipse for Java和VIM进行其他所有操作,但是我觉得是时候完全使用VIM了)。这是我当前的HelloWorld代码: 我

  • 我已经阅读了与此问题相关的所有堆栈溢出问题。我对此有了一些想法,但它不能帮助我解决这个问题。 我已使用服务帐户进行授权。因为我不想为我的用户显示授权屏幕。因此,我已经创建了服务帐户,并在GoogleAPI控制台中启用了域范围的委托权限。 我需要以编程的方式在用户的Google课堂中创建课程。我已按照 Java 快速入门使用 OAuth 客户端 ID 和 OAuth 客户端密钥。完成后,授权令牌已存

  • 任何帮助都将不胜感激。

  • 问题内容: 我正在使用Eclipse编译和运行我的Java代码。 这是我得到的错误。 这是我的代码 File.txt 我在项目的同一文件夹中创建了file.txt。 问题答案: 您的文件应直接位于项目文件夹下,而不应位于其他任何子文件夹内。 因此,如果您的项目文件夹为,则其文件夹结构(虽然不完整)应类似于:- 它不应该是文件夹。 或者,您可以提供以下相对于项目文件夹的路径,以在以下位置搜索文件:-

  • 问题内容: 我正在尝试在Android Studio 0.3.0中编译我的Android项目。今天我收到以下错误: 进行一些网络搜索使我相信此问题与JUnit有某种关系。但是,我没有在项目中使用JUnit。也许我无意中打开了某些选项?在这种情况下,如何在项目中禁用单元测试?有任何想法吗? 问题答案: 终于找到了。在“运行/调试配置”对话框中。禁用JUnit并重新编译。