java - 设置短值 Java

标签 java literals primitive-types

我正在用 J2ME 编写一些代码。我有一个带有方法 setTableId(Short tableId) 的类。现在,当我尝试编写 setTableId(100) 时,它会给出编译时错误。如何在不声明另一个短变量的情况下设置短值?

当设置 Long 值时,我可以使用 setLongValue(100L) 并且它可以工作。那么,这里的 L 是什么意思,Short 值的字符又是什么?

谢谢

最佳答案

在 Java 中,整数字面量默认为 int 类型。对于其他一些类型,您可以在文字后面加上不区分大小写的字母,如 LDF 以指定 long、double、或 float ,分别。请注意,为了提高可读性,通常使用大写字母。

Java 语言规范没有为字节或短类型提供相同的语法糖。相反,您可以使用显式转换来声明它:

byte foo = (byte)0;
short bar = (short)0;

在您的 setLongValue(100L) 方法调用中,您不必一定包含 L 后缀,因为在这种情况下,int 文字会自动加宽为 long .这在 Java 语言规范中称为加宽原语转换。

关于java - 设置短值 Java,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2294934/

相关文章:

原始类型的python按引用调用

java - NetBeans 给出错误,提示项目在从未打开时已被删除

Java:如何清理数组并有效地以不同大小重用它?

java - Java 作用域中的异步 lambda 如何处理局部变量

haskell - 什么是 Addr# 类型,如何使用它?

java - Java如何计算原始数组的长度?

java - mod产生的水不流动

javascript - JS中原始构造函数的用处

java - 从文件输入/变量 Java 中解析长文本

c - 为什么 0x8000000000000000LL 被 gcc 认为是 unsigned long long?