标签: long-integer

如何为日历添加长值?

Calendar中的Calendar的add方法将整数作为输入

int secs = 3;
cal.add(Calendar.SECOND, secs);

但是如果秒是Long类型怎么办呢.

long secs = 3

有很多可能性,例如添加秒迭代,但其他选项有哪些?

java calendar date long-integer

11
推荐指数
2
解决办法
1万
查看次数

将Double转换为二进制表示?

我有以下问题,所以我试图将一个double转换为它的二进制表示,但使用这个Long.toBinaryString(Double.doubleToRawLongBits(d))没有帮助,因为我有大数字,Long不能存储它们,即2^900.

感谢任何帮助:).

java binary double type-conversion long-integer

11
推荐指数
3
解决办法
3万
查看次数

Java 8 - 将Integer转换为长编译问题

我的项目中有以下抽象通用数据持有者(简化):

public abstract static class Value<E> {

    E value;

    public void setValue(E value) {
        this.value = value;
    }

    public E getValue() {
        return this.value;
    }

    public String toString() {
        return "[" + value + "]";
    }
}
Run Code Online (Sandbox Code Playgroud)

随着一个InputCollection包含列表Objects:

public static class InputCollection {

    private ArrayList<Object> values;

    public InputCollection() {
        this.values = new ArrayList<>();
    }

    public void addValue(Value<?> value) {
        System.out.println("addding " + value + " to collection");
        this.values.add(value);
    }

    public <D> D getValue(Value<D> value, D defaultValue) …
Run Code Online (Sandbox Code Playgroud)

java eclipse generics java-8 long-integer

11
推荐指数
2
解决办法
3322
查看次数

在Swift中,如何将String转换为Int64?

我从一个包含非常大数字的文本文件加载行.String有toInt方法,但是如何将字符串转换为能够处理大数字的Int64呢?

我没有看到toInt64方法或toLong等.必须有办法,但我还没有通过搜索找到任何东西.

或者我想我可以用数字(或数字组)读取字符串中的数字,然后将它们与适当的因子10一起添加,但这看起来有点过分.或者正确的方法是以二进制形式读取数据并以这种方式转换它?

谢谢

string xcode int64 long-integer swift

11
推荐指数
2
解决办法
2万
查看次数

Java中的无符号长整数

目前,我使用的是有符号值,-2 ^ 63到2 ^ 63-1.现在我需要相同的范围(2*2 ^ 64),但只有正值.我发现java文档提到unsigned long,它适合这种用法.

我试图将2 ^ 64声明为一个Long包装器对象,但它仍然丢失了数据,换句话说,它只捕获到了Long.MAX_VALUE,所以我显然遗漏了一些东西.是BigInteger的签署久,Java支持?

是否有关于如何声明和使用它的定义或指针?

java unsigned biginteger long-integer

11
推荐指数
2
解决办法
3万
查看次数

Java RSA加密

我试图来回编码一个简单的字符串"测试".

public static String encode(Key publicKey, String data) throws NoSuchAlgorithmException, NoSuchPaddingException, InvalidKeyException, IllegalBlockSizeException, BadPaddingException {

    byte[] byteData = data.getBytes(); // convert string to byte array

    Cipher cipher = Cipher.getInstance(ALGORITHM); // create conversion processing object
    cipher.init(Cipher.ENCRYPT_MODE, publicKey); // initialize object's mode and key

    byte[] encryptedByteData = cipher.doFinal(byteData); // use object for encryption

    return new String(encryptedByteData); // convert encrypted byte array to string and return it

}

public static String decode(Key privateKey, String data) throws NoSuchAlgorithmException, NoSuchPaddingException, InvalidKeyException, IllegalBlockSizeException, BadPaddingException {

    byte[] …
Run Code Online (Sandbox Code Playgroud)

java encryption rsa long-integer

10
推荐指数
1
解决办法
1万
查看次数

为什么C编译器指定长为32位,长为64位?

在128位数字变为现实之前,长64位并保留很长时间是不是更有意义?

c bit 32bit-64bit long-long long-integer

10
推荐指数
2
解决办法
2万
查看次数

Java:将(long)Object转换为double的许多方法

Object obj知道其实是一个long.在某些数学代码中我需要它double.

直接将其加倍可以安全吗?

double x = (double)obj;
Run Code Online (Sandbox Code Playgroud)

或者我应该先把它转换成长,然后再加倍.

double x = (double)(long)obj;
Run Code Online (Sandbox Code Playgroud)

我还发现了另一个(不太可读)替代方案:

double x = new Long((long)obj).doubleValue();
Run Code Online (Sandbox Code Playgroud)

这样做有什么危险/含义?

解决方案摘要:

  • obj是一个Number而不是一个long.
  • Java 6需要显式转换,例如: double x = ((Number)obj).doubleValue()
  • Java 7具有工作魔法: double x = (long)obj

有关Java6/7问题的更多详细信息,请阅读有关TJ答案的讨论.

编辑:我做了一些快速测试.两种投射方式(显式/魔术)具有相同的性能.

java double casting numbers long-integer

10
推荐指数
2
解决办法
2万
查看次数

Java,Long.parse二进制字符串

为什么这段代码会抛出NumberFormatException:

String binStr = "1000000000000000000000000000000000000000000000000000000000000000";
System.out.println(binStr.length());// =  64
System.out.println(Long.parseLong(binStr, 2));
Run Code Online (Sandbox Code Playgroud)

java long-integer

10
推荐指数
2
解决办法
1万
查看次数

从长变量中获取第二个数字

我试图从一个长变量中获取第二个数字.

long mi = 110000000;
int firstDigit = 0;
String numStr = Long.toString(mi);
for (int i = 0; i < numStr.length(); i++) {
    System.out.println("" + i + " " + numStr.charAt(i));
    firstDigit =  numStr.charAt(1);
}
Run Code Online (Sandbox Code Playgroud)

当我firstDigit = numStr.charAt(1)在控制台上打印时.我得到1预计但当循环结束firstDigit49.有点困惑为什么.

java long-integer

10
推荐指数
3
解决办法
1226
查看次数