标签: long-integer

将长字符串存储在数据库中是否很好?

我需要在数据库中存储长字符串.字符串可以是5或6个句子长.你认为这是一个很好的设计策略吗?或者我应该为该字符串存储一个id,然后与另一个表创建一个关系,该表包含存储该字符串的文件的位置.请问两者的优点和缺点.

字符串已经过预处理并存储在数据库中.任何修改都会读取整个字符串并完全替换它.所以你可以假设字符串是不可分割的.

database string performance long-integer

9
推荐指数
3
解决办法
5723
查看次数

在javascript中减去长数字

为什么在以下脚本中q == 0?

<script>
  var start = 1234567890123456789;
  var end =   1234567890123456799;
  var q = end - start;
  alert(q);
</script>
Run Code Online (Sandbox Code Playgroud)

我认为结果应该是10.减去这两个数字的正确方法是什么?

javascript subtraction long-integer

9
推荐指数
1
解决办法
4778
查看次数

如何生成String的长哈希?

我有一个java applciation,我想在其中long为字符串生成id(为了在neo4j中存储这些字符串).为了避免数据重复,我想为存储在long整数中的每个字符串生成一个id,对于每个字符串应该是唯一的.我怎样才能做到这一点 ?

java string hash long-integer

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

在Java中从MongoDB读取Integer字段时出现长类型转换错误

我正从Java中访问一个从Rails应用程序写入的MongoDB实例.我正在检索应存储在Long中的整数值,因为它们可能超过32位.

这段代码将编译:

this.profile_uid  = (Long)this.profile.get("uid");
Run Code Online (Sandbox Code Playgroud)

但是,我收到类型转换运行时错误:

Exception in thread "main" java.lang.ClassCastException: java.lang.Integer cannot be cast to java.lang.Long
Run Code Online (Sandbox Code Playgroud)

这可能是因为Mongo将字段作为Integer返回,但是我知道一些ID可以作为Longs出现,并且由于各种原因我无法更改写入DB的类型(来自另一个应用程序); 在某些情况下它可能是32位而在其他情况下可能是64位.

Java应用程序需要处理任何一个,我不想遇到某种截断或溢出问题.我想在Java端将其读作Long.

我已经尝试了下面的解决方法,它似乎运行,但我不知道我是否可以通过这种方式避免截断或溢出问题.我不确定NumberJava中的类是什么.

this.profile_uid  = ((Number)this.profile.get("uid")).longValue();
Run Code Online (Sandbox Code Playgroud)

这是合法的吗?它有什么副作用?还有其他/更好的方法吗?

java casting mongodb long-integer

9
推荐指数
1
解决办法
4840
查看次数

无符号Long Long超出范围?

好的,这是一个奇怪的问题:

  • 我正在使用unsigned long long变量(我使用过偶数long,效果相同)
  • 需要能够存储64位整数(sizeof返回8,这很好)

但是,当我试图转向像这样的值1<<63,并执行一些简单的按位操作时,奇怪的是,我似乎得到了负值.为什么?

我的测试代码:

    unsigned long long c = 0;

    c |= 1l << 56; printf("c = %lld\n",c);
    c |= 1l << 63; printf("c = %lld\n",c);
Run Code Online (Sandbox Code Playgroud)

输出:

c = 72057594037927936 
c = -9151314442816847872
Run Code Online (Sandbox Code Playgroud)

旁注:

  1. 当然,即使我c = 1l<<63直接做同样的事情也会发生.
  2. 所有测试均在Mac OS X 10.6上进行,并使用Apple的LLVM编译器3.0进行编译

有什么建议?

c c++ 64-bit objective-c long-integer

9
推荐指数
1
解决办法
6976
查看次数

Java - 将人类可读大小转换为字节

我发现了很多关于将原始字节信息转换为人类可读格式的信息,但我需要做相反的事情,即将字符串"1.6 GB"转换为长值1717990000.是否内置/良好 - 这样做的定义方式,还是我几乎不得不自己动手?

[编辑]:这是我的第一次刺...

static class ByteFormat extends NumberFormat {
    @Override
    public StringBuffer format(double arg0, StringBuffer arg1, FieldPosition arg2) {
        // TODO Auto-generated method stub
        return null;
    }

    @Override
    public StringBuffer format(long arg0, StringBuffer arg1, FieldPosition arg2) {
        // TODO Auto-generated method stub
        return null;
    }

    @Override
    public Number parse(String arg0, ParsePosition arg1) {
        return parse (arg0);
    }

    @Override
    public Number parse(String arg0) {
        int spaceNdx = arg0.indexOf(" ");
        double ret = Double.parseDouble(arg0.substring(0, spaceNdx));
        String unit = arg0.substring(spaceNdx + …
Run Code Online (Sandbox Code Playgroud)

java byte human-readable long-integer

9
推荐指数
4
解决办法
5407
查看次数

JPQL:将Long转换为String以执行LIKE搜索

我有以下JPQL查询:

SELECT il
FROM InsiderList il
WHERE ( il.deleteFlag IS NULL OR il.deleteFlag = '0' )
  AND il.clientId = :clientId
  AND (    LOWER( il.name ) LIKE :searchTerm
        OR il.nbr LIKE :searchTerm
        OR LOWER( il.type ) LIKE :searchTerm
        OR LOWER( il.description ) LIKE :searchTerm )
Run Code Online (Sandbox Code Playgroud)

客户希望我们能够搜索该nbr字段,这是一个java.lang.Long.

:

如何java.lang.Long使用JPQL 执行LIKE搜索?

java jpa jpql long-integer sql-like

9
推荐指数
1
解决办法
8101
查看次数

Kotlin将Hex String解析为Long

我开始在Kotlin工作,我需要解析一个长的十六进制字符串,这在java中可以完成

Long.parseLong("ED05265A", 16); 
Run Code Online (Sandbox Code Playgroud)

虽然我能找到,但我在Kotlin找不到任何东西

val i = "2".toLong()
Run Code Online (Sandbox Code Playgroud)

这不是我要找的!

在我从头开始编写任何内容之前,是否有内置函数?

hex long-integer kotlin

9
推荐指数
2
解决办法
7691
查看次数

Long,Integer和Short的比较方法的不同实现?

为什么静态方法的实现compareLong,IntegerShort在Java中的图书馆有什么不同?

用于Long:

public static int compare(long x, long y) {
    return (x < y) ? -1 : ((x == y) ? 0 : 1);
}
Run Code Online (Sandbox Code Playgroud)

用于Integer:

public static int compare(int x, int y) {
    return (x < y) ? -1 : ((x == y) ? 0 : 1);
}
Run Code Online (Sandbox Code Playgroud)

用于Short:

public static int compare(short x, short y) {
    return x - y;
}
Run Code Online (Sandbox Code Playgroud)

java integer compare short long-integer

9
推荐指数
1
解决办法
655
查看次数

用于Windows和Linux的C++中64位整数的跨平台定义

我正在尝试用C++ for Windows(MinGW)和Linux(g ++)编写跨平台代码.我习惯在Linux中将64位整数定义为"long",但当我移动到MinGW时,sizeof(long)返回4个字节.然后我发现我可以使用"long long"或"__INT64"在MinGW中定义64位整数.我有两个问题:

1.-为Windows和Linux定义64位整数的最便携方式是什么?我目前正在使用#ifdef,但我不知道这是否是最好的方法:

#ifdef LINUX
    #define INT64 long 
#elif WIN32
    #define INT64 long long
#endif
Run Code Online (Sandbox Code Playgroud)

2.- 我应该在MinGW中使用"long long"还是"__INT64"?为什么?

c++ cross-platform mingw int64 long-integer

8
推荐指数
1
解决办法
6416
查看次数