java报错Exception in thread "main" java.lang.Error:

   更新日期:2024.06.02

你代码中的语法错误在System.out.println处,改成如下就好了

System.out.println("大了!你还有" + (c - (j + 1)) + "次机会!");
System.out.println("小了!你还有" + (c - (j + 1)) + "次机会!");

说说原因,System.out.println("大了!你还有" + c - (j + 1) + "次机会!");

括号里的肯定会先计算,括号里 j和1都是数字所以 用"+"之后也是数字, 令 int x = (j+1)

于是println括号里的内容等价于 "大了!你还有" + c - x + "次机会!"

这时从左往右顺序计算,"大了!你还有" + c  字符串和数字用“+”连接,这时"+"作连接符,假设 c = 10,"大了!你还有" + c 的结果是 “大了!你还有10”

==>“大了!你还有10”- x + "次机会!"

字符串和数字用“-”连接,问题就在这里了,“-”在java中要么用作表示负数,要么用作四则运算中的减。所以这里提示 运算符 - 不能连接 String 和 int。

另外,Scanner 使用后都建议手动关闭

innn.close();
inn.close();
on.close();


  • 17579678561 :java.lang.ClassNotFoundException 这是怎么回事?
    罗须栋2962 :答:NotFoundException意思是JRE在自己知道的路径里没找到用户要的类,如果不用IDE的话,就好好检查一下classpath有没有加上“.”也就是当前目录,或者执行的位置是不是指向了class文件所在的路径。JAVA常见错误 NoClassDefFoundError是error,继承java.lang.Error继承,ClassNotFoundException来自Exception,是检查...
  • 17579678561 :java报错:java.lang.Error:Null Pointer Exception:
    罗须栋2962 :答:1、使用了未初始化的变量(虽然已经声明)2、使用了未初始化的对象(虽然已经声明)3,使用了关键字或已存在的类名作变量对象方法或类名。一般报java.lang.NullPointerException的原因有以下几种:1字符串变量未初始化;2接口类型的对象没有用具体的类初始化,比如:List lt;会报错 List lt = new ...
  • 17579678561 :java中error和exception有什么区别
    罗须栋2962 :答:而Exception是指严重程度较轻的程序问题,相较于Error更容易被后续代码处理和修复的,有些需要通过try catch代码处理,有些不建议通过try catch代码处理。二、含义不同:Error就是程序运行时候抛出的最严重级别的错误了,如VirtualMachineError,ThreadDeath。抛出了Error的程序从Java设计的角度来讲,程序基本不...
  • 17579678561 :java exception异常怎么解决
    罗须栋2962 :答:在运行中出现“除数为0”错误,引发ArithmeticException异常。运行时系统创建异常对象并抛出监控区域,转而匹配合适的异常处理器catch,并执行相应的异常处理代码。由于检查运行时异常的代价远大于捕捉异常所带来的益处,运行时异常不可查。Java编译器允许忽略运行时异常,一个方法可以既不捕捉,也不声明抛出运行...
  • 17579678561 :java运行出现exception in thread main java.lang.arrayindexOutOfBoun...
    罗须栋2962 :答:你的报错信息是数组越界了,如果你是放在eclipse里运行的话可能是在执行的时候没有传参数,你可以试试在命令行里编译运行这个程序,java if1 12这样12就传入了main函数的String args[]中,args里就有值了,你可以试试。
  • 17579678561 :java.lang.IllegalStateException异常是什么问题
    罗须栋2962 :答:错误类型大致为以下几种:java.lang.IllegalStateException:Cannot forward a response that is already committed IllegalStateException:response already commited IllegalStateException:getOutputStream() has already been called for this request ………错误原因:该异常表示,当前对...
  • 17579678561 :java.lang.NullPointerException错误是什么意思
    罗须栋2962 :答:java.lang.NullPointerException具体意思是空指针异常,最常见的问题就是没有初始化。在Java中一般报空指针异常的原因有以下几种:1、字符串变量未初始化;2、接口类型的对象没有用具体的类初始化,比如:List lt;会报错 List lt = new ArrayList();则不会报错了 3、当一个对象的值为空时,没有...
  • 17579678561 :异常处理机制-Exception
    罗须栋2962 :答:Java为我们提供了非常完美的异常处理机制 使得我们可以更加专心的去写程序 有的时候遇到需要添加异常处理块的地方 像eclipse会自动提示你 感觉很幸福!我们看看异常处理的一些类的结构组成 从根部开始分为两大类 Error和Exception Error是程序无法处理的错误 比如OutOfMemoryError ThreadDeath等 这些异常发生时 Java虚拟机...
  • 17579678561 :java.lang.ClassCastException怎么解决?
    罗须栋2962 :答:写好后,就可以执行这段代码了,执行发现报错java.lang.ClassCastException。报错的意思就是强制类型转换异常,接着,在修改下代码,代码如下:public static void main(String[] args) { BaiDu baidu = new BaiDu();JingYan jingyan = new JingYan();baidu = (BaiDu)jingyan;System.out.println(baidu...
  • 17579678561 :常见JAVA运行时异常有哪些?
    罗须栋2962 :答:1、五种常见的异常:ClassCastException(类转换异常)、IndexOutOfBoundsException(数组越界异常)、NullPointerException(空指针异常)、ArrayStoreException(数据存储异常,操作数组时类型不一致)、BufferOverflowException(还有IO操作的,缓冲溢出异常)。2、java运行时异常是可能在java虚拟机正常工作时抛出的异常。java...
  • 相关链接

    欢迎反馈与建议,请联系电邮
    2024 © 视觉网