首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >=>在映射函数中的作用是什么?

=>在映射函数中的作用是什么?
EN

Ethereum用户
提问于 2017-10-11 04:27:41
回答 2查看 3.3K关注 0票数 1

我对实际编程非常陌生,没有那么多区块链。我了解一些Java,并试图通过智能合同简介来学习稳健性,在第7行(参见下面),他们使用映射声明变量,但我不明白=>是如何发挥作用的。

代码语言:javascript
复制
mapping (address => uint) public balances;
EN

回答 2

Ethereum用户

回答已采纳

发布于 2017-10-11 04:35:31

映射类似于Java中的Dictionary,在Java中您指定了键和值对,如

var mydictionary = new Dictionary(key,value);

在稳固状态下,您对=>使用相同的方法;其中Key = address和uint作为值。

票数 2
EN

Ethereum用户

发布于 2017-10-11 06:37:59

在具有键值对的数组中;可以使用相应的键引用值。

也就是说,array[key]将返回存储的value

在实体映射中,可以将其看作是一个数组,在这里,在solidity语法中,mapping (address => uint) public balances;意味着balances有一组由address数据类型映射的uint数据类型值。

基本上,您可以从uint获得给定地址的相应balances值。要在这里获得相应的值,您需要调用balances[address],这将返回uint值。

您可以在稳健的医生们中找到详细的解释。

映射类型声明为mapping(_KeyType => _ValueType)。在这里,_KeyType几乎可以是任何类型,除了映射、动态大小的数组、契约、枚举和结构。_ValueType实际上可以是任何类型,包括映射。映射可以看作是哈希表,这些哈希表实际上是初始化的,因此每个可能的键都存在,并且映射到一个值,该值的字节表示形式都是零:类型的默认值。但是,相似性在这里结束:键数据实际上并不存储在映射中,只有用于查找值的keccak256散列。

这个问题也将很好地了解映射是如何工作的。

票数 3
EN
页面原文内容由Ethereum提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://ethereum.stackexchange.com/questions/28227

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档