java hashcode的Delphi实现
程序使用java做后台服务,数据处理时使用了java的hashcode,Delphi程序也需要生成这个hashcode,为了一致,所以要在Delphi下实现和Java一样的算法。
下面即Delphi版的hashCode:
function hashCode(val: string): Integer;
var
i: Integer;
res: Extended;
x: Integer; function RoundEx(x: Extended): Integer;
begin
Result := Trunc(x) + Trunc(Frac(x) * );
end;
begin
res := ; for i := to Length(val) do
begin
res := res + Ord(val[i]) * Power(, Length(val) - (i - ) - );
end; Result := RoundEx(res);
end;
java hashcode的Delphi实现的更多相关文章
- CRC32 vs Java.HashCode
找了容量为27万中文词库进行试验 CRC32 中冲突率 < 0.01% 而 Java.HashCode 有 4% hashCode 的速度 应该比 CRC 快 2-3 倍 CR ...
- java hashCode方法返回值
hashCode 是和内存地址相关的一个整数. HashCode只是在需要用到哈希算法的数据结构中才有用 用途是为了方便快速地查找对象: HashMap 是根据键对象的 HashCode 来进行快速查 ...
- Java hashCode() 和 equals()的若干问题
原文:http://www.cnblogs.com/skywang12345/p/3324958.html 本章的内容主要解决下面几个问题: 1 equals() 的作用是什么? 2 equals() ...
- Java hashCode() 和 equals()的若干问题解答
本章的内容主要解决下面几个问题: 1 equals() 的作用是什么? 2 equals() 与 == 的区别是什么? 3 hashCode() 的作用是什么? 4 hashCode() 和 equa ...
- Java hashCode
Java中的集合(Collection)有两类,一类是List,再有一类是Set. 你知道它们的区别吗?前者集合内的元素是有序的,元素可以重复:后者元素无序,但元素不可重复. 那么这里就有一个比较严重 ...
- java android 访问DELPHI 的DATASNAP
最新版的DELPHI开发DATASNAP非常简单便捷,DataSnap的REST风格和对JSON的支持,使之成为服务器端开发的神器. 一.DATASNAP服务器中的方法: TServerMethods ...
- Java HashCode方法
有许多人学了很长时间的Java,但一直不明白hashCode方法的作用, 我来解释一下吧.首先,想要明白hashCode的作用,你必须要先知道Java中的集合. 总的来说,Java中的集合(Co ...
- Java hashCode 和 equals()
1 Object中定义的hashCode() public int hashCode() Returns a hash code value for the object. This method i ...
- JAVA - hashcode与equals作用、关系
Hashcode的作用 总的来说,Java中的集合(Collection)有两类,一类是List,再有一类是Set.前者集合内的元素是有序的,元素可以重复:后者元素无序,但元素不可重复. ...
随机推荐
- 配置nginx到后端服务器负载均衡
nginx和haproxy一样也可以做前端请求分发实现负载均衡效果,比如一个tomcat服务如果并发过高会导致处理很慢,新来的请求就会排队,到一定程度时请求就可能会返回错误或者拒绝服务,所以通过负载均 ...
- Android -- startActivityForResult和setResult
startActivityForResult与startActivity的不同之处 startActivity( ) 仅仅是跳转到目标页面,若是想跳回当前页面,则必须再使用一次startActivit ...
- JavaSE(十)之Map总结 (转)
http://www.cnblogs.com/zhangyinhua/p/7545979.html 阅读目录(Content) 一.Map接口 1.1.为什么Collection不能满足集合的所有功能 ...
- OpenGL ES 3.0(五)
使用EGL(在iOS中是EAGL)创建屏幕渲染 加载顶点和片段着色器 创建程序对象,连接顶点和片段着色器,连接程序对象 设置视口 清除颜色缓冲区 绘制一个简单的图元(三角形) 显示缓冲区内容 1.创建 ...
- MySQL开启慢查询日志时报Errcode: 13 的解决方法
开启慢查询日志时会出现(Errcode: 13 - Permission denied)文件找不到的错误,但文件明明是存在的并且有读写的权限. mysql> set global slow_qu ...
- 微信小程序 - 上拉加载更多组件
详情用例看demo,点击下载示例:loadmore
- Android 调用webservice并解析
这是调用webService的具体方法 private final static String nameSpace="http://tempuri.org/"; private f ...
- 配置Git绑定Git@OSC
用户名,这个名字会出现在以后的提交记录中. git config --global user.name "Git@OSC用户名" 然后是Email,同样,这个Email也会出现在你 ...
- 给go程序添加命令行参数
操作系统: CentOS 6.9_x64 go语言版本: 1.8.3 问题描述 需要应用程序根据不同的配置文件访问不同的服务器,希望程序启动时可以指定配置文件. 解决方案 package main i ...
- Linux下使用logrotate实现日志切换
运维过程中经常会发现一些 C 程序,每天会生产这样的日志: /home/admin/app_name/logs/access_log 那么天长地久,如果这个程序不会自动去轮转这个日志,那么这个日志文件 ...