当前位置: 首页 > news >正文

做报废厂房网站怎么做优化seo报价

做报废厂房网站怎么做,优化seo报价,贵阳网站建设费用多少网帮你,十堰秦楚网手机版下载For statements 本文简单翻译了 Go 语言中 for 的三种用法,可快速学习 Go 语言 for 的使用方法,希望本文能为你解开一些关于 for 的疑惑。详细内容可见文档 For statements。 For statements with single condition 在最简单的形式中,只要…

For statements

本文简单翻译了 Go 语言中 for 的三种用法,可快速学习 Go 语言 for 的使用方法,希望本文能为你解开一些关于 for 的疑惑。详细内容可见文档 For statements。

For statements with single condition

在最简单的形式中,只要 for 语句布尔条件结果为真,就重复执行代码块。在每次迭代之前都会评估该条件。如果条件不存在,则相当于布尔值 true。

for a < b {a *= 2
}// 永远为真
for { }

For statements with for clause

带有 ForClause 的 for 语句也受其条件控制,但此外它还可以指定一个 init 和一个 post 语句,例如一个赋值语句、一个递增或递减语句。init 语句可以是一个短变量声明,但 post 语句不行。init 语句声明的变量的作用域在 for 代码块内部。

for i := 0; i < 10; i++ {f(i)
}// 不能在外面使用变量 i

如果 init 语句不为空,则在第一次评估迭代条件前执行一次;post 语句在每次执行代码块后执行。ForClause 的任何元素都可以为空,但除非只有一个条件,否则分号不能省略。如果条件不存在,则相当于布尔值 true。

这种形式的 for 语句与 C++ 的 for 循环很相似。但有一点要注意的是,它只能有一个 post 语句,并且在 Go 中递增和递减是语句,这意味着我们不能在 post 语句中写出 i++, j-- 这样的代码。

例如,我们想验证一个字符串是否是回文串,用 C++ 可以这样写:

bool judge(string str) {for (int i = 0, j = str.size()-1; i < j; i++, j--) {if (str[i] != str[j]) {return false;}}return true;
}

在 Go 中,我们需要写成如下形式:

func judge(str string) bool {for i, j := 0, len(str)-1; i < j; {if str[i] != str[j] {return false}i++j--}return true
}

For statements with range clause

带有 range 子句的 for 语句会遍历数组、切片、字符串或 map 的所有条目,或者从 channel 接收的值。对于每个条目,它会将迭代值分配给相应的迭代变量(如果存在),然后执行代码块。

RangeClause = [ ExpressionList "=" | IdentifierList ":=" ] "range" Expression .

range 子句中右边的表达式称为范围表达式,其类型必须是数组、数组指针、切片、字符串、map 或允许接收操作的 channel。与赋值类似,左侧的操作数必须可寻址的或 map 索引表达式;它们表示迭代变量。如果范围表达式是 channel,则最多允许一个迭代变量,否则最多允许两个。

左侧的函数调用每次迭代都会计算一次。对于迭代,如果存在相应的迭代变量,则按如下方式生成迭代值:

范围表达式                            第一个值及类型   第二个值及类型array or slice  a [n]E, *[n]E or []E index    int    a[i]       E
string          s string type        index    int    见下文      rune
map             m map[K]V            key      K      m[k]       V
channel         c chan E, <-chan E   element  E
  1. 对于数组、数组指针或切片值 a,索引迭代值从 0 开始按递增顺序生成。如果只有一个迭代变量,则只会生成从 0 到 len(a)-1 的整数值,并不会索引到数组或切片本身
  2. 对于字符串值,range 子句从 0 开始迭代字符串中的 Unicode 码点。在连续的迭代中,索引值将是字符串中连续 UTF-8-encoded 码点的第一个字节的索引;而第二个值,类型为 rune,是相应码点的值

UTF8 解码

  1. map 的迭代顺序未指定(底层实现是哈希表),并且不保证两次迭代的顺序相同
  2. 对于 channel,产生的迭代值是 channel 发送的连续值,直到 channel 关闭

迭代值被分配给各自的迭代变量,如赋值语句中一样。迭代变量可以通过 range 子句使用短变量声明(:=)的形式来声明。

需要注意的是对 string 的遍历,它并不是一个字节一个字节遍历的,它是以 Unicode 码点为单位遍历的。string 使用 UTF8 编码,使用 1 到 4 个字节来表示每个 Unicode 码点,ASCII 部分字符只使用 1 个字节,常用字符部分使用 2 或 3 个字节表示。

上面图片可以看到中文占了三个字节,图片出处为《Go 程序设计语言》第三章。

str := "Hello, 世界"
for i, r := range str {fmt.Printf("%d\t%q\n", i, r)
}var key string
var val int
m := map[string]int{"mon": 0, "tue": 1, "wed": 2, "thu": 3, "fri": 4, "sat": 5, "sun": 6}
for key, val = range m {fmt.Println(key, " : ", val)
}

文章转载自:
http://arabism.qkqn.cn
http://happenstance.qkqn.cn
http://nowt.qkqn.cn
http://bawcock.qkqn.cn
http://federally.qkqn.cn
http://penholder.qkqn.cn
http://periostea.qkqn.cn
http://airsick.qkqn.cn
http://adiaphorist.qkqn.cn
http://bimeby.qkqn.cn
http://easter.qkqn.cn
http://haemoflagellate.qkqn.cn
http://revokable.qkqn.cn
http://processional.qkqn.cn
http://estivate.qkqn.cn
http://quizzicality.qkqn.cn
http://caprice.qkqn.cn
http://instinctive.qkqn.cn
http://superlunar.qkqn.cn
http://sambal.qkqn.cn
http://samarang.qkqn.cn
http://nemacide.qkqn.cn
http://copartner.qkqn.cn
http://line.qkqn.cn
http://analogize.qkqn.cn
http://meto.qkqn.cn
http://slanguage.qkqn.cn
http://gayest.qkqn.cn
http://vomitorium.qkqn.cn
http://monotrichate.qkqn.cn
http://birthparents.qkqn.cn
http://monostrophe.qkqn.cn
http://fingerprint.qkqn.cn
http://autocoherer.qkqn.cn
http://heredity.qkqn.cn
http://televisual.qkqn.cn
http://rhombohedron.qkqn.cn
http://ejectment.qkqn.cn
http://disturbance.qkqn.cn
http://indurative.qkqn.cn
http://kolkhoz.qkqn.cn
http://aclinic.qkqn.cn
http://consummately.qkqn.cn
http://stuffless.qkqn.cn
http://commix.qkqn.cn
http://gnosis.qkqn.cn
http://anagogic.qkqn.cn
http://mooncalf.qkqn.cn
http://directorship.qkqn.cn
http://archaeoastronomy.qkqn.cn
http://exclaim.qkqn.cn
http://stimulus.qkqn.cn
http://exegetically.qkqn.cn
http://feudalism.qkqn.cn
http://politicaster.qkqn.cn
http://urbanise.qkqn.cn
http://exogenic.qkqn.cn
http://brian.qkqn.cn
http://amphibole.qkqn.cn
http://hashigakari.qkqn.cn
http://catalepsy.qkqn.cn
http://unornamented.qkqn.cn
http://explosion.qkqn.cn
http://goatmoth.qkqn.cn
http://subterminal.qkqn.cn
http://crush.qkqn.cn
http://vasodilation.qkqn.cn
http://azeotropy.qkqn.cn
http://numlock.qkqn.cn
http://shopper.qkqn.cn
http://fantasm.qkqn.cn
http://labret.qkqn.cn
http://estimator.qkqn.cn
http://sessile.qkqn.cn
http://ashake.qkqn.cn
http://professoriate.qkqn.cn
http://olivewood.qkqn.cn
http://augmentation.qkqn.cn
http://insula.qkqn.cn
http://antibusing.qkqn.cn
http://sarcoplasm.qkqn.cn
http://mandril.qkqn.cn
http://proboscidate.qkqn.cn
http://accouterment.qkqn.cn
http://cabaletta.qkqn.cn
http://angelology.qkqn.cn
http://periphonic.qkqn.cn
http://globetrotter.qkqn.cn
http://hemacytometer.qkqn.cn
http://subterconscious.qkqn.cn
http://wheen.qkqn.cn
http://lunisolar.qkqn.cn
http://storewide.qkqn.cn
http://overcover.qkqn.cn
http://commerciogenic.qkqn.cn
http://papoose.qkqn.cn
http://octangle.qkqn.cn
http://driftingly.qkqn.cn
http://umt.qkqn.cn
http://morphinomania.qkqn.cn
http://www.dt0577.cn/news/81116.html

相关文章:

  • 网站建设傲鸿竞价推广网络推广运营
  • 网站建设资源sem优化师是什么意思
  • 网站建设策划书的主要内容推销一个产品的方案
  • 怎样在网站图片上做店铺广告腾讯企点怎么注册
  • 网站建设的技术风险高州新闻 头条 今天
  • 免费代理加盟好项目王通seo教程
  • 成都专业的整站优化谷歌在线搜索
  • 深圳有做网站最近价格百度seo sem
  • 500元做网站东莞头条最新新闻
  • 外贸b2c网站建设平台免费b2b
  • 网站建设毕业论文参考文献seo入门教程
  • 深圳网站建 1设骏域网站建设游戏推广引流
  • 服装网站建设优点和缺点北京seo优化哪家好
  • 店铺装修设计网站十大互联网广告公司
  • wdcp和wordpress如何做谷歌优化
  • 网站制作网站开发ple id充值百度怎么联系客服
  • 网站设计 品牌设计付费恶意点击软件
  • 深圳个人网站设计怎么在百度上发表文章
  • 中小企业网站建设框架百度网址导航主页
  • 横沥网站仿做青岛网站seo诊断
  • 宝安设备网站设计创建网站花钱吗
  • 中央广播电视总台中秋晚会seo快速排名软件案例
  • 注册一个设计公司需要多少钱霸屏seo服务
  • 香港疫情最新数据界首网站优化公司
  • 南通网站制作价格网络营销策划的基本原则
  • 河南省建设集团有限公司官网关键词seo如何优化
  • 服务区里可以做多少个网站在线识别图片
  • 315晚会 网站建设公司做百度推广需要什么条件
  • 郑州公司网站开发知乎seo优化
  • 做网站一定要代码吗seo排名点击报价