数组和字典的遍历
数组的概念
- 数组是一组数据的集合。在程序中负责批量处理数据。
- 数组中的元素可以包括各个类型的数据,也可以对数组内数据类型进行限定。
- 可以通过 数组名【数字】 的形式来访问数组元素,数字 0 代表数组的第一个元素。
- 数组可以通过调用函数来增加或去除内部数据。可以使用 size()来获取数组内元素总数。
- 数组是引用变量
- 引用变量:执行 变量 A= 变量 B 这段代码时,变量 A 不会重新创建一个与 B 变量值相同的数据。对于 A 变量的修改可以影响到 B。
数组遍历
func arrayIterator():# range等价于for(int i = 0; i < 20; i++)print("数组遍历方法1:")for i in range(3):print(i)print("数组遍历方法2:")for ele in arr:print(ele)print("数组遍历方法3:")for index in range(arr.size()):print(arr[index])
字典遍历
func dictionaryIterator():print("字典遍历方法1:")for key in dict:print("key:" + key as String)print("value:" + dict[key] as String)print("字典遍历方法2:")for key in dict.keys():print("key:" + key as String)print("value:" + dict[key] as String)print("字典遍历方法3:")for value in dict.values():print("value:" + value as String)	
静态变量和静态方法
- const常量
const ANSWER = 42
- 静态变量,常量和静态变量不是一个东西,有区别的
static var my_static_field = 42
- 静态方法
- 静态方法只能访问静态常量
static func getAnswer():return ANSWER
13. 对象
- 真实生活中的对象,属性和方法
- 真实生活中,一辆汽车是一个对象。对象有它的属性,如重量和颜色等,方法有启动停止等
# Inner class,默认继承Object
class Animal:extends Object  # 如果不指定继承的类,默认基础Objectconst STATIC_FIELD = "静态变量"# 属性var height: intfunc _init():print("Animal 构造方法")func move():print("animal,移动")static func staticFuction():pass
- 使用super关键字调用父类方法
14. 调试
- 在编写 GdScript 时,如果没有调试工具将是一件很痛苦的事情。
- 你的代码可能包含语法错误,逻辑错误,有了调试工具,这些错误比较容易发现。
方法
 ![![[Pasted image 20240419153107.png]]](https://img-blog.csdnimg.cn/direct/4ea63049fbd44b398352acc1bd118260.png)
每一行的左边点击一下可以打断点
 ![![[Pasted image 20240419153212.png]]](https://img-blog.csdnimg.cn/direct/fbb78100066145c8a82c4cd37f12961d.png)
打两个断点
 这时候运行一下程序
 就会在第一个断点处停下来
 ![![[Pasted image 20240419153324.png]]](https://img-blog.csdnimg.cn/direct/4931a933727f4284a7f21fcd56ac55ba.png)
通过下面的debug页面
 可以查看栈帧和变量
 ![![[Pasted image 20240419153603.png]]](https://img-blog.csdnimg.cn/direct/873cd3dc976c4a2a818c4b05851cc846.png)
打开跳过断点,就会关闭断点调试,路过断点不会进入调试界面
![![[Pasted image 20240419153730.png]]](https://img-blog.csdnimg.cn/direct/3014aed8d17a4c8ea8e61c51f29939bf.png)
-  复制错误信息 
-  单步进入 
 可以进入函数运行代码
 ![![[Pasted image 20240419153800.png]]](https://img-blog.csdnimg.cn/direct/b8b2415073c641749b329d58ade06f09.png) 
-  单步跳过 
 一行一行执行代码
 ![![[Pasted image 20240419153807.png]]](https://img-blog.csdnimg.cn/direct/9d8e730b42b344688e54d665af7cb464.png) 
-  继续 
 ![![[Pasted image 20240419154017.png]]](https://img-blog.csdnimg.cn/direct/efa7a0e45f4c421c8197ec44d8e5ecdf.png) 
继续运行程序
 如果有下一个断点,到下一个断点停止
15. 参考资料
- godot官方文档
- Godot Tutorials的GDScript Fundamentals Tutorial Series,youtube播放量最高的godot教程视频
- Godot Tutorials的Godot Basics Tutorial Series,youtube播放量最高的godot教程视频
- B站视频