JSONObject put,accumulate,element的区别

本文深入解析了JSONObject对象中的三个关键方法:put、accumulate和element,详细阐述了它们的功能、区别及使用场景,帮助开发者更好地掌握如何在JSON对象中进行键值对的操作。

public Object put (Object key, Object value) 将value映射到key下。如果此JSONObject对象之前存在一个value在这个key下,当前的value会替换掉之前的value
Associates the specified value with the specified key in this map(optional operation). If the map previously contained . a mapping for this key, the old value is replaced by the specified value. (A map m is said to contain a mapping for a key k if and only if m.containsKey(k) would return true .))

public JSONObject accumulate (String key, Object value) 累积value到这个key下。这个方法同element()方法类似,特殊的是,如果当前已经存在一个value在这个key下那么一个JSONArray将会存储在这个key下来保存所有累积的value。如果已经存在一个JSONArray,那么当前的value就会添加到这个JSONArray中
。相比之下replace方法会替代先前的value
Accumulate values under a key. It is similar to the element method except that if there is already an object stored
under the key then a JSONArray is stored under the key to hold all of the accumulated values. If there is already a
JSONArray, then the new value is appended to it. In contrast, the replace method replaces the previous value.

public JSONObject element (String key, Object value) 将键/值对放到这个JSONObject对象里面。如果当前value为空(null),那么如果这个key存在的话,这个key就会移除掉。如果这
个key之前有value值,那么此方法会调用accumulate()方法。
Put a key/value pair in the JSONObject. If the value is null, then the key will be removed from the JSONObject if it is
present. If there is a previous value assigned to the key, it will call accumulate.

 

<think>嗯,用户问的是二十种氨基酸单字母代码,这个我需要仔细回忆确认。首先,我记得氨基酸单字母代码通常是根据它们的英文名来的,比如Alanine是A,因为A是首字母。但有些可能不是首字母,比如可能因为首字母已经被占用,所以用其他字母,比如Cysteine可能是C,但需要确认。 接下来,我需要逐个列举所有20种氨基酸,并对应它们的单字母代码。可能有些容易混淆的,比如谷氨酰胺(Glutamine)是Q,因为G已经被甘氨酸(Glycine)用了。类似地,天冬酰胺(Asparagine)是N,因为A已经被丙氨酸用了,D可能被天冬氨酸(Aspartic Acid)用了,所以用N,来自谷氨酰胺中的“Q”来源可能不同,需要再想想。 另外,像异亮氨酸(Isoleucine)是I,亮氨酸(Leucine)是L,这两个应该没问题。色氨酸(Tryptophan)是W,可能因为它的结构中有双环,所以用W,来自“tWyptophan”之类的谐音?或者德语中的某个词?需要确认。 还有像苯丙氨酸(Phenylalanine)是F,可能因为F是Phe的首字母,但P已经被脯氨酸(Proline)用了,所以用F?或者是因为另一个原因?同样,酪氨酸(Tyrosine)是Y,可能来自Tyr的最后一个字母? 然后,需要检查是否有遗漏或重复的情况。比如,丝氨酸(Serine)是S,苏氨酸(Threonine)是T,甲硫氨酸(Methionine)是M,这些应该没错。精氨酸(Arginine)是R,因为A已经被用了,所以用R,可能来自“aRginine”? 还有像谷氨酸(Glutamic Acid)是E,天冬氨酸(Aspartic Acid)是D,这两个可能需要确认。因为它们的单字母代码可能与它们的性质有关,比如DE在字母表中靠近,可能因为它们的酸性,而D是Asp的第二个字母?或者是因为其他原因? 然后,赖氨酸(Lysine)是K,因为L被亮氨酸用了,所以用K,可能来自“K”的发音?或者荷兰语中的某个词?组氨酸(Histidine)是H,可能因为H是His的首字母。脯氨酸(Proline)是P,没错。 缬氨酸(Valine)是V,甘氨酸(Glycine)是G,丙氨酸是A,这些应该没问题。天冬酰胺(Asparagine)是N,谷氨酰胺(Glutamine)是Q,这两个需要确认是否准确。Q可能来自谷氨酰胺中的“Q”发音,或者某个字母的关联。 最后,半胱氨酸(Cysteine)是C,没错。色氨酸是W,酪氨酸是Y,苯丙氨酸是F,这些都需要确认正确性。如果有不确定的,可能需要查阅资料确保准确无误。 总结一下,我应该按照顺序列出所有20种氨基酸,确保每个单字母代码正确,并给出对应的中文名可能的记忆方法。例如,Q对应谷氨酰胺可以用“Q带个圈,像谷氨酰胺的结构”来记忆,或者类似的助记法。同时,注意检查是否有拼写错误或代码混淆的情况,比如不要将天冬酰胺(N)天冬氨酸(D)搞混,或者谷氨酰胺(Q)谷氨酸(E)区分开。</think>以下是二十种氨基酸单字母代码及其对应的中文名称记忆要点,按字母顺序排列: 1. **A (Alanine) - 丙氨酸** - 记忆:英文首字母直接对应。 2. **C (Cysteine) - 半胱氨酸** - 记忆:C代表含硫(硫的英文Sulfur,但Cysteine含-SH基团)。 3. **D (Aspartic Acid) - 天冬氨酸** - 记忆:D取自酸性(Acid)的“D”发音(Aspartic Acid为酸性氨基酸)。 4. **E (Glutamic Acid) - 谷氨酸** - 记忆:E取自“酸性”的延续(DE在字母表中相邻,均为酸性氨基酸)。 5. **F (Phenylalanine) - 苯丙氨酸** - 记忆:F来自“Phenyl”(苯环)的首字母发音。 6. **G (Glycine) - 甘氨酸** - 记忆:G是英文名首字母,结构最简单(Glycine的侧链仅一个氢原子)。 7. **H (Histidine) - 组氨酸** - 记忆:H来自英文名首字母,且是唯一含咪唑基的氨基酸。 8. **I (Isoleucine) - 异亮氨酸** - 记忆:I代表异构体(Isoleucine是亮氨酸的异构体)。 9. **K (Lysine) - 赖氨酸** - 记忆:K来自“碱性”(德语“Kalium”与碱性相关,Lysine为碱性氨基酸)。 10. **L (Leucine) - 亮氨酸** - 记忆:L是英文名首字母。 11. **M (Methionine) - 甲硫氨酸** - 记忆:M含硫(硫的英文Sulfur,但M对应“Methyl”甲基硫结合)。 12. **N (Asparagine) - 天冬酰胺** - 记忆:N取自“胺基”(Asparagine含酰胺基)。 13. **P (Proline) - 脯氨酸** - 记忆:P代表环状结构(Proline的吡咯烷环)。 14. **Q (Glutamine) - 谷氨酰胺** - 记忆:Q形似酰胺基的结构(Glutamine含酰胺基)。 15. **R (Arginine) - 精氨酸** - 记忆:R代表强碱性(Arginine含胍基,碱性最强)。 16. **S (Serine) - 丝氨酸** - 记忆:S是英文名首字母。 17. **T (Threonine) - 苏氨酸** - 记忆:T是英文名首字母。 18. **V (Valine) - 缬氨酸** - 记忆:V是英文名首字母。 19. **W (Tryptophan) - 色氨酸** - 记忆:W来自其结构中的双环(形似两个“V”组合成W)。 20. **Y (Tyrosine) - 酪氨酸** - 记忆:Y取自“酪”的发音(Tyrosine含酚羟基)。 --- ### 记忆技巧 - **酸性氨基酸(带负电荷)**:D(天冬氨酸)、E(谷氨酸) - **碱性氨基酸(带正电荷)**:H(组氨酸)、K(赖氨酸)、R(精氨酸) - **含硫氨基酸**:C(半胱氨酸)、M(甲硫氨酸) - **芳香族氨基酸**:F(苯丙氨酸)、W(色氨酸)、Y(酪氨酸) 如果需要进一步分类(如极性、非极性等),可以补充说明!
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值