Learning English From Android Source Code:2 Ampersand
这一次想把标点符号的英语表达总结一下,这些单词非常重要但easy被我们忽视。以我的经验,还是多认识几个。以备不时之需。
以下从“标点符号”開始:
punctuation
[英][ˌpʌŋktʃuˈeɪʃn][美][ˌpʌŋktʃuˈeʃən]
n.标点法; 标点符号; 标点符号的使用; 点标点;
ampersand
[英][ˈæmpəsænd][美][ˈæmpərsænd]
n."&"的记号名称,and符;
源代码中使用:
出自frameworks/base/core/java/android/net/UrlQuerySanitizer.java
609 /**
610 * Parse a query. A query string is any number of parameter-value clauses
611 * separated by any non-zero number of ampersands. A parameter-value clause
612 * is a parameter followed by an equal sign, followed by a value. If the
613 * equal sign is missing, the value is assumed to be the empty string.
614 * @param query the query to parse.
615 */
616 public void parseQuery(String query) {
617 clear();
618 // Split by '&'
619 StringTokenizer tokenizer = new StringTokenizer(query, "&");
620 while(tokenizer.hasMoreElements()) {//解析工作被放在while循环中,与xml的解析相似
621 String attributeValuePair = tokenizer.nextToken();
622 if (attributeValuePair.length() > 0) {
623 int assignmentIndex = attributeValuePair.indexOf('=');
624 if (assignmentIndex < 0) {
625 // No assignment found, treat as if empty value
626 parseEntry(attributeValuePair, "");
627 }
628 else {
629 parseEntry(attributeValuePair.substring(0, assignmentIndex),
630 attributeValuePair.substring(assignmentIndex + 1));
631 }
632 }
633 }
634 }
先说说clauses这个词和文件名称UrlQuerySanitizer,然后再尝试翻译parseQuery方法的凝视。
clause
[英][klɔ:z][美][klɔz]
n.从句,分句; 条款,款项; 【计】子句
凝视中是对字符串的解析,那么这里译成从句或子句更好一些。
一个条款的例句:What clause do you require in the contract(合同)?
Sanitizer
这个词比較有趣。由于直接翻看词典的解释为消毒杀菌剂,清扫车。跟本文貌似不太搭噶。
我再看sanitize的翻译。vt.使清洁。 进行消毒; 审查; 净化。也有对其审查之意。
结合上下文,这个类的作用是对URL请求检查或清理,那么这里译成审查者我觉得还不错。哪位有更好的建议欢迎赐教。
凝视的翻译例如以下:
解析一个请求。这个请求字符串被随意的非零的‘&’符分成随意数字的參数值子句(And符就是拆分标识)。
一个參数值子句是一个參数后面跟一个等号。然后再跟一个值。假设等号没有了,后面的值就会被觉得是空。
Learning English From Android Source Code:2 Ampersand的更多相关文章
- Learning English From Android Source Code:1
英语在软件行业的重要作用不言自明,尤其是做国际项目和写国际软件,好的英语表达是项目顺利进行的必要条件.纵观眼下的IT行业.可以流利的与国外客户英文口语交流的程序猿占比并非非常高.要想去国际接轨,语言这 ...
- Learning from the CakePHP source code - Part I
最近开始痛定思痛,研究cakephp的源码. 成长的路上从来没有捷径,没有小聪明. 只有傻傻的努力,你才能听到到成长的声音. 下面这篇文章虽然过时了,但是还是可以看到作者的精神,仿佛与作者隔着时空的交 ...
- Troubles in Building Android Source Code
Some Troubles or problems you may encounter while you setup the Android source code build environmen ...
- Android Source Code
一. Android 框架 http://elinux.org/Master-android Android框架层级 : Android 自下 而 上 分为 4层; -- Linux内核层; -- 各 ...
- Learning from the CakePHP source code - Part II
原文:http://debuggable.com/posts/learning-from-the-cakephp-source-code-part-ii:480f4dd6-57fc-4715-8709 ...
- Google android source code build 问题总结【转】
本文转载自:http://light3moon.com/2015/01/31/Google%20android%20source%20code%20build%20%E9%97%AE%E9%A2%98 ...
- Increasing heap size while building the android source code on Ubuntu 15.10
http://stackoverflow.com/questions/34940793/increasing-heap-size-while-building-the-android-source-c ...
- Android source code compile error: “Try increasing heap size with java option '-Xmx<size>'”
export JACK_SERVER_VM_ARGUMENTS="-Dfile.encoding=UTF-8 -XX:+TieredCompilation -Xmx4g" ./pr ...
- android activity 启动过程分析(source code 4.4)
说实话,android source code从2.3到4.4变化是蛮多的,尤其是media部分,虽然总的框架是没有多大变化,但是找起代码来看还是挺麻烦的.在android里面最受伤的是使用了java ...
随机推荐
- 【Luogu】P2447外星千足虫(高斯消元)
题目链接 高斯消元解%2意义下的方程,Bitset优化一下. 在消的过程中就能顺便把有解的第一问求出来,记录一下访问过的最大行. #include<cstdio> #include< ...
- CSSborder制作小三角形
#cssborder制作小三角形 1.原理是CSS盒模型 一个盒子包括: margin+border+padding+content – 上下左右边框交界处出呈现平滑的斜线. 利用这个特点, 通过设置 ...
- http请求代理proxy-ajax
今天把项目中的反向代理脚本程序抽成了一个插件,通过配置文件配置代理的http请求,这样使用起来比较方便,每位开发成员都可以用自己配置的代理调试代码.也可以用来直接做http代理,你甚至都不用Charl ...
- static变量的生命周期
static生命周期 2011-07-15 16:01 静态变量的类型说明符是static.静态变量当然是属于静态存储方式,但是属于静态存储方式的量不一定就是静态变量,例如外部变量虽属于静态存储方式, ...
- Python和其他进程的管道通信方式--popen和popen2的比较
目前有一个查询程序 get_user_id 是用C写的,python需要调用这个程序:使用 get_user_id "用户名" 可以得到输出: "ID0002451&q ...
- bootstrapTable 应用小例(收索)
<script src="/plugins/My97DatePicker/WdatePicker.js"></script> <!-- Content ...
- FFT题集
FFT学习参考这两篇博客,很详细,结合这看,互补. 博客一 博客二 很大一部分题目需要构造多项式相乘来进行计数问题. 1. HDU 1402 A * B Problem Plus 把A和B分别当作多项 ...
- Django学习笔记(12)——分页功能
这一篇博客记录一下自己学习Django中分页功能的笔记.分页功能在每个网站都是必要的,当页面因需要展示的数据条目过多,导致无法全部显示,这时候就需要采用分页的形式进行展示. 分页在网站随处可见,下面展 ...
- Jackson对泛型的序列化和反序列化方法汇总
说明:Jackson对于简单泛型是可以正常操作的,但是如果对于太过于复杂的泛型类有时会不成功.目前还在找着更合适的Json库.不过这一点在dotnet原生方案JavaScriptSerializer可 ...
- System.Length 函数
function _PCharLen(P: _PAnsiChr): Longint;{$IFNDEF LEGACY_PCHARLEN}begin Result := 0; if P <> ...