当前位置: 首页 > 知识库问答 >
问题:

为什么此程序显示编译错误?

董霖
2023-03-14
class Example{
    public static void main(String args[]){
        byte b1=10,b2=20,b3;    
        b3=b1+b2;
        System.out.println(b3);
    }   
}

共有1个答案

那利
2023-03-14

将两个字节相加产生一个< code>int。如果不进行强制转换,就不能将< code>int赋给< code>byte。

您需要这样做:

byte b1 = 10, b2 = 20, b3;
b3 = (byte) (b1 + b2);
System.out.println(b3);

或者这个:

byte b1 = 10, b2 = 20;
int b3 = b1 + b2;
System.out.println(b3);
 类似资料:
  • 问题内容: 该程序在Java 7中(或在Java 8中带有)可以很好地编译,但是在Java 8中无法编译: 结果: 换句话说,这是Java 7和8之间的 反向 源不兼容。我已经遍历了Java SE 8和Java SE 7 列表之间的不兼容性,但是没有找到任何适合我的问题的东西。 那么,这是一个错误吗? 环境: 问题答案: 感谢您的报告。这看起来像个错误。我会照顾好它,并且一旦我们有更多关于为什么发

  • 我有以下两个实体,但在Trainer中的oneToMany关系行显示错误消息“Join table trainer_batch can not be found”,而我使用的是@JoinColumn注释。PLGG如下所示... persistance.xml如下所示

  • 问题内容: 在方法或类范围内,下面的行进行编译(带有警告): 在类范围中, 变量获取其默认值 ,以下给出“未定义引用”错误: 它不是第一个应该以相同的“未定义参考”错误结束吗?还是第二行应该编译?还是我缺少什么? 问题答案: tl; dr 对于 字段 ,是非法的,因为它是对的非法前向引用。您实际上可以通过编写来解决此问题,该文件可以毫无抱怨地进行编译。 对于 局部变量 ,是非法的,因为未在使用前进

  • 为什么这不能用gcc48和clang32编译? GCC错误: 叮当声错误: 编辑-解决方案 我已经接受了查尔斯·萨尔维亚的回答,但出于实际原因,我无法使用提出的变通方法(专门研究N)。我找到了其他适合我的解决办法。如果依赖于T,则启用_:

  • 问题内容: 以下Java代码无法编译: 编译器报告: 奇怪的是,标记为“ OK”的行可以正常编译,但是标记为“ Error”的行失败。它们看起来基本相同。 问题答案: 您的lambda需要与保持一致。如果您参考JLS#15.27.3(Lambda的类型): 如果满足以下所有条件,则lambda表达式与函数类型一致: […] 如果函数类型的结果为void,则lambda主体为语句表达式(第14.8节

  • 问题内容: 试图在我的GUI窗口上显示来自互联网的图片。 到目前为止,我的代码是: 问题是我得到的只是一个应该显示图片的蓝色框。我该如何解决? 在Windows上使用python 3.3 问题答案: 现在这是一个疯狂的猜测,但是我只记得一个类似的问题。我能够以这种方式重现您的“蓝框”,所以这也可能是您的问题。我将尝试一下。 我假设PhotoImage是在其他某个范围内创建的(可能是一种方法或类似的