如何从int转换为长期在Java中?(How do I convert from int to Lo

2019-06-18 14:58发布

我一直在这里找到两者兼备,并从烦恼去谷歌人longint ,而不是周围的其他方法。 但我敢肯定,我不是以前已经从去碰上这种情况下只有一个intLong

我发现的唯一其他答案是“只要把它设置为龙摆在首位”,这真的没有解决的问题。

我最初尝试铸造,但我得到一个“ Cannot cast from int to Long

for (int i = 0; i < myArrayList.size(); ++i ) {
    content = new Content();
    content.setDescription(myArrayList.get(i));
    content.setSequence((Long) i);
    session.save(content);
}

正如你可以想像我有点困惑,我使用的是卡住int ,因为有些内容即将作为一个ArrayList ,并为此我存储这个信息的实体要求序列号为龙。

Answer 1:

请注意,有一个投来的差long和强制转换为Long 。 如果你投以long (原始值),那么它应该自动装箱为一个Long (即包装它引用类型)。

你可以选择使用new创建的实例Long ,与对其进行初始化int值。



Answer 2:

使用以下命令: Long.valueOf(int);



Answer 3:

如果您已经将INT类型为一个整数,你可以这样做:

Integer y = 1;
long x = y.longValue();


Answer 4:

使用

new Long(your_integer);

要么

Long.valueOf(your_integer);


Answer 5:

我有这个小玩具,这也与非通用接口协议。 我行与饲料是否错误(OK快乐)将其掷一个ClassCastException

public class TypeUtil {
    public static long castToLong(Object o) {
        Number n = (Number) o;
        return n.longValue();
    }
}


Answer 6:

在Java中,你可以这样做:

 int myInt=4;
 Long myLong= new Long(myInt);

在你的情况将是:

content.setSequence(new Long(i));


Answer 7:

我们将获得通过使用长值Number参考。

public static long toLong(Number number){
    return number.longValue();
}

它适用于所有数字类型,这里是一个测试:

public static void testToLong() throws Exception {
    assertEquals(0l, toLong(0));   // an int
    assertEquals(0l, toLong((short)0)); // a short
    assertEquals(0l, toLong(0l)); // a long
    assertEquals(0l, toLong((long) 0)); // another long
    assertEquals(0l, toLong(0.0f));  // a float
    assertEquals(0l, toLong(0.0));  // a double

}


Answer 8:

怎么样

int myInt = 88;

//不会编译

Long myLong = myInt;

//编译,并保留INT的非空的精神。 最好的演员阵容 没有投可言 。 当然,你的使用情况可能需要很长的和可能的空值。 但是,如果int或其它多头是你唯一的输入,你的方法可以被修改,我建议这种方法。

long myLong = myInt;

//编译,是最有效的方式,并明确了源值,现在是,将来永远是NULL。

Long myLong = (long) myInt;


Answer 9:

 1,new Long(intValue);
 2,Long.valueOf(intValue);


Answer 10:

我有麻烦了大量与此有关。 我只是想:

thisBill.IntervalCount = jPaidCountSpinner.getValue();

凡IntervalCount是一个长期的,而JSpinner的设置返回一个龙。 最后,我不得不写这个函数:

    public static final Long getLong(Object obj) throws IllegalArgumentException {
    Long rv;

    if((obj.getClass() == Integer.class) || (obj.getClass() == Long.class) || (obj.getClass() == Double.class)) {
        rv = Long.parseLong(obj.toString());
    }
    else if((obj.getClass() == int.class) || (obj.getClass() == long.class) || (obj.getClass() == double.class)) {
        rv = (Long) obj;
    }
    else if(obj.getClass() == String.class) {
        rv = Long.parseLong(obj.toString());
    }
    else {
        throw new IllegalArgumentException("getLong: type " + obj.getClass() + " = \"" + obj.toString() + "\" unaccounted for");
    }

    return rv;
}

这似乎这样的伎俩。 简单铸造再多,没有以上的解决方案为我工作。 非常令人沮丧。



Answer 11:

 //Suppose you have int and you wan to convert it to Long
 int i=78;
 //convert to Long
 Long l=Long.valueOf(i)


Answer 12:

只要有唯一的方法Long.valueOf(long) ,从投intlong将隐含在使用的情况下完成的Long.valueOf(intValue)

更清晰的方式来做到这一点

Integer.valueOf(intValue).longValue()


文章来源: How do I convert from int to Long in Java?