后续会结合网络安全进行GO语言实战深入,加油~ 这些年我学过各种编程语言,从最早的C语言到C++,再到C#、PHP、JAVA,再到IOS开发、Python,到最新的GO语言,学得是真的杂。...在数组和切片中它返回元素的索引和索引对应的值,在集合中返回key-value对。数组后续文章介绍,这里主要介绍遍历字符串。...原因是传统对字符串的遍历是按照字节来遍历,而一个汉字在utf8编码对应3个字节。如何解决呢?需要将str转换成[]rune切片即可。 rune golang中string底层是通过byte数组实现的。...} } } 输出结果如下图所示: break语句的注意事项: break语句出现在多层嵌套的语句块中,可以通过标签指明要终止的是哪一层语句块 break默认会跳出最近的for循环 break...同样,continue语句出现在多层嵌套的循环语句体中时,可以通过标签指明要跳过的是哪一层循环,这个和前面的break标签使用规则一样。 个人不太喜欢这个跳出指定循环层的功能,感觉代码不是很好控制。
循环执行5次后,i的值变成了5,此时不再满足循环条件,跳出循环。最终输出结果为:0、1、2、3、4。 ...然后使用 for 循环遍历整个数组 arr,遍历过程中将每个数组元素的值加到 sum 变量中。在 for 循环结束后,打印出 sum 的值。 ...最终输出的结果应该是:5 is positive。...的值不是 1、2、3,则输出 "Invalid number"。...在每个 case 分支的末尾都使用了 break 语句来退出 switch 语句的执行。 最终,该程序输出的结果为 "Two",因为 num 的值为 2。
在某些编程语言中,例如 C/C++、C#、PHP、Java、JavaScript 等等,do-while 是一种基本的循环结构。...那么,为什么 Python 不提供这种语法结构呢,这种现状的背后有何种设计考量因素呢?...除了这一特点,这种结构最大的应用场景其实是在 C/C++ 中特殊的do {...} while (0) 用法。...在下面的示例中,步骤 1、4 和 5 要求必须执行,而步骤 2 取决于步骤 1 的执行结果,步骤 3 则取决于步骤 2 的执行结果。...分析完 do-while 的好处后,让我们回到主题:Python 为什么不需要设计 do-while 循环语法呢?
顺序错误 我们使用变量的顺序,一般是首先声明变量,再去使用变量,而如果你改变这个顺序的话,先使用,再声明,使用的时候就会报错。有些同学会问,为什么他不去楼下看看有没有,万一楼下有呢?...首先,我们看看流程控制怎么用 ? 流程 我们看到,如果modify是true的话,会打印 “我死给你看”,而modify是false的话,会执行“还能做朋友”,所以不修改需求,还能做朋友是正确的。...,下一篇单独介绍for循环,因为它实在太重要了 while循环:我们来一个从0打印输出到100的例子 ?...这里还顺便复习了下上面的分支语句,我循环次数很多,但是我只想看最后一次的具体变化,我可以设定一个条件,比如intTest是100的时候,我再看发生了什么,而不是每条都看,那样会影响之前的结果,看起来不方便...do-while 其实如果理解了 while 循环,再看do-while,感觉是差不多的,值得注意的是while会先判断条件再执行代码,条件不过关不执行,而do-while会先执行再判断,即使不满足条件也非要执行一次
"; 当字符串有换行需求的时候,我们可以用\n来代表一个换行符,如下: String str1 = '单引号\n这是第二行了'; print(str1); 打印结果如下: 单引号 这是第二行了...其实,在Dart中,除了单引号和双引号,还可以用三引号(即三个单引号或者三个双引号)来修饰字符串。...double c; c = 11; c ??= 23; print(c); 上面代码的打印结果是: 11.0 为什么不是23呢?因为c ??...= 23;这行代码的意思是:如果c为空,那么就将23赋值给c。上例中,在执行c ??= 23;这行代码之前,c就已经被赋值为11,所以最终打印结果是11。 5,??运算符。...在OC中,如果一个int类型的变量未被初始化,那么默认值为0,但是在Dart中,如果一个int类型的变量未被赋值,那么其值为null,不是0。 7,While和Do-While的区别。
但是从本质上讲,while,do-while和for循环之间是可以相互转换的。 4.多重循环 多重循环就是在循环结构的循环体中又出现循环结构。 在实际开发中一般最多用到三层重循环。...因为循环层数越多,运行时间越长,程序越复杂,所以一般用2-3层多重循环就可以了。另外不同循环之间也是可以嵌套的。...&符号获取变量的内存地址,那获取之后如何来表示这是一个地址,而不是一个普通的值呢?...在这里我想谈几个看起来有点无聊的话题: 为什么我们需要指针?直接用变量名不行吗? 当然可以,但是变量名是有局限的。 变量名的本质是什么?...为什么会这样呢? 站在编译器的角度讲,变量名、数组名都是一种符号,它们都是有类型的,它们最终都要和数据绑定起来。
0; } 注:在最新的C标准中,main函数前的类型为int而不是void c语言的具体结构 简单来说,一个C程序就是由若干头文件和函数组成。...因为循环层数越多,运行时间越长,程序越复杂,所以一般用2-3层多重循环就可以了。另外不同循环之间也是可以嵌套的。...有参函数更为灵活,输出的内容可以随着n的改变而随意变动,只要在main函数中传递一个参数就可以了 而在无参函数中输出的相对就比较固定,当需要改动的时候还需要到自定义的方法内改变循环变量的值。...数组的遍历 数组就可以采用循环的方式将每个元素遍历出来,而不用人为的每次获取指定某个位置上的元素,例如我们用for循环遍历一个数组: 注意以下几点: 最好避免出现数组越界访问,循环变量最好不要超出数组的长度...不一样的就是多维数组需要采用嵌套循环 注意:多维数组的每一维下标均不能越界 综合练习: #include #define N 10 //打印分数 void printScore
在循环结构中,如果想跳出循环体,结束整个循环结构可以使用 语句。 语句用在循环语句体中,用于终止某次循环过程,即跳过循环体中 尚未执行的语句,接着进行下一次是否执行循环的判定。...上述全对 7.以下 do-while 循环代码的执行结果是( )。...,所以循环体至少被执行一次 9.在 Java 中有如下代码,则编译运行该类的输出结果是( )。...=0) return; System.out.print(i); } } A.13578 B. 02468 C.0123456789 D.0 10.下面程序执行的结果是在屏幕上打印 ( )行 for...数组排序 要求使用至少两种排序算法 2.现有一个数组,要求对数组进行倒置并且按照如下格式输出 Int[] arr = {11,22,33,44,55,66,77} 输出结果77-66-55-44-33-
return 0; } 注:在最新的C标准中,main函数前的类型为int而不是void c语言的具体结构 简单来说,一个C程序就是由若干头文件和函数组成。...循环结构之do-while循环 C语言中的do-while循环,一般形式如下: ?...因为循环层数越多,运行时间越长,程序越复杂,所以一般用2-3层多重循环就可以了。另外不同循环之间也是可以嵌套的。...有参函数更为灵活,输出的内容可以随着n的改变而随意变动,只要在main函数中传递一个参数就可以了 而在无参函数中输出的相对就比较固定,当需要改动的时候还需要到自定义的方法内改变循环变量的值。...数组的遍历 数组就可以采用循环的方式将每个元素遍历出来,而不用人为的每次获取指定某个位置上的元素,例如我们用for循环遍历一个数组: ?
return 0; } 注:在最新的C标准中,main函数前的类型为int而不是void c语言的具体结构 简单来说,一个C程序就是由若干头文件和函数组成。...但是从本质上讲,while,do-while和for循环之间是可以相互转换的。 循环结构之多重循环 多重循环就是在循环结构的循环体中又出现循环结构。 在实际开发中一般最多用到三层重循环。...因为循环层数越多,运行时间越长,程序越复杂,所以一般用2-3层多重循环就可以了。另外不同循环之间也是可以嵌套的。...有参函数更为灵活,输出的内容可以随着n的改变而随意变动,只要在main函数中传递一个参数就可以了 而在无参函数中输出的相对就比较固定,当需要改动的时候还需要到自定义的方法内改变循环变量的值。...数组的遍历 数组就可以采用循环的方式将每个元素遍历出来,而不用人为的每次获取指定某个位置上的元素,例如我们用for循环遍历一个数组: 注意以下几点: 最好避免出现数组越界访问,循环变量最好不要超出数组的长度
return 0; } 注:在最新的C标准中,main函数前的类型为int而不是void C语言的具体结构 简单来说,一个C程序就是由若干头文件和函数组成。...循环结构之do-while循环 C语言中的do-while循环,一般形式如下: ?...因为循环层数越多,运行时间越长,程序越复杂,所以一般用2-3层多重循环就可以了。另外不同循环之间也是可以嵌套的。...有参函数更为灵活,输出的内容可以随着n的改变而随意变动,只要在main函数中传递一个参数就可以了 而在无参函数中输出的相对就比较固定,当需要改动的时候还需要到自定义的方法内改变循环变量的值。...数组的遍历 数组就可以采用循环的方式将每个元素遍历出来,而不用人为的每次获取指定某个位置上的元素,例如我们用for循环遍历一个数组: ?
每次迭代中,将i的值加到sum中,并递增i的值。当i的值大于10时,条件为假,循环结束,输出最终的累加和。...("Sum: " + sum); 在这个例子中,循环体计算每个数字的累加和,并将结果存储在变量sum中。...循环条件判断变量i是否小于等于10,如果满足条件,则继续执行循环体。在每次迭代中,变量i递增,直到达到循环结束的条件。最后,输出累加和的结果。...Console.WriteLine(number); } 在上面的示例中,numbers是一个整数数组,使用foreach循环遍历数组中的每个元素,并将每个元素打印到控制台。...如果是,则执行循环体内的代码;如果不是,则跳出循环。 在循环体内执行代码,可以对当前元素进行操作。 执行完循环体内的代码后,迭代器会自动移动到集合中的下一个元素。
\n");//while后边的条件满⾜,死循环的打印我没吃 return 0; } 同样的条件if 和while,while也是可以实现循环效果的,但是为什么while会死循环呢?...语句 在循环执⾏的过程中,如果某些状况发⽣的时候,需要提前终⽌循环,这是⾮常常⻅的现象。...; } 执⾏的结果: 打印了1,2,3,4后,当i等于5的时候,循环正break 的地⽅终⽌,不再打印,不再循环。...4.1.2continue举例 如果把break 换成continue 会是什么结果呢?...语句也不是⼀⽆是处,在多层循环的代码中,如果想快速跳出但是使⽤goto就⾮常的⽅便了。 for(...) { for(...) { for(...
分支结构 if语句 if(表达式) 语句1 else 语句2 表达式成⽴(为真),则语句执⾏,表达式不成⽴(为假),则语句不执⾏ 在C语⾔中,0为假,⾮0表⽰真,也就是表达式的结果如果是...0,则语句不执⾏,表达式的结果如果是不是0,则语句执⾏。...注: • switch 后的 expression 必须是整型表达式 • case 后的值,必须是整形常量表达式 为什么输入4会出现图中的错误呢?...那break呢?我们直接上代码 我们看调试结果少了5,所以在 for 循环中 continue的作用是跳过本次循环中 continue 后的代码,直接去到循环的调整部分。...do-while循环中的break和continue do-while循环中的break和for,while非常相似。那continue呢?
但实际上,你不必在准备使用变量之前声明它。所以这一次,我声明了所有变量(除了title)在我第一次为它们赋值的同一行。 那么为什么我不在第 22 行声明title呢?因为那样它以后就不在“范围”内了。...转换告诉编译器“我知道 x 是一个 double,我试图将它的值存储到一个不能保存小数的int中。但我不在乎。你为什么不假装 x 的值是一个整数呢?如果你不得不舍弃小数点后的所有内容,也没关系。”...练习 30:Do-While 循环 在这个练习中,我要做一些我通常不做的事情。我要向你展示在 Java 中制作循环的另一种方法。...任何你可以用while循环做的事情,你也可以用 do-while 循环(和稍微不同的代码)做,反之亦然。 那么为什么 Java 的开发者要费心制作 do-while 循环呢?...然后在第 19 行,我们将 total 的值更改为7。 条件再次被检查,过程继续。最终,人类输入了一个0,那个0被添加到总数中(这不会伤害它),条件变为假,所以 do-while 循环停止循环。
2-5:数据类型转换 a.为什么需要数据类型转换 比如两个不同的数据类型的数据进行运算,得到的结果是什么呢?...我永远爱你"); }while(i<10000); 注意:相比较,结果for循环相对于while循环和do-while循环更简便一些。...而且,do-while循环至少会执行一次,for循环和while循环就不是。因为,do-while循环是先执行,后判断,for循环和while循环是,先判断后执行。...8.数组 8-1:为什么需要数组 例如:黄超华叫文超统计文家和黄家,每个人的年龄的平均值是多少?此时,人员太多,用什么来存储呢?...-----》数组可以实现 8-2:Java中的数组 数组是一个变量,用于将相同数据类型的数据存储在存储单元中,数组中的索引元素必须属于相同的数据类型 8-3:如何使用数组 a.使用数组的步骤 (
但是,现在将程序进行如下修改:将数组中的0元素删除,同时将数组的长度修改为5. ? 思考:数组中没有0,为什么输出的结果中最小值为0呢? 现在,在将程序进行如下修改:将数组中的数据全部修改成负数。...思考:数组中没有0,为什么输出的结果中最大值为0呢? **应该怎样解决如上的问题呢?**将程序修改如下: ? image-20210507083531212 练习2:计算一个整数数组的所有元素的和。...: ", names) 执行如下: 交换前的数组: [我 是 好人] 交换后的数组: [好人 是 我] 1.5 数组冒泡排序 如何对数组中存储的数据,按照从大到小,或者从小到大进行排序?...最终输出结果发现,并不会影响main( )函数中数组a的值,这一点与其它编程语言是有区别的。...", avg) } 练习4:用函数实现字符串数组{ "中国", "美国", "巴西", "澳大利亚", "加拿大" }中的内容反转,并在主函数(main( ))中,输出反转的结果。
领取专属 10元无门槛券
手把手带您无忧上云