自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(79)
  • 收藏
  • 关注

原创 【唐老狮】Unity、C# 每日一题 NO.5

题目给你一个整数 x,如果 x 是一个回文整数,返回 true ;否则,返回 false。回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。例如,121 是回文,而 123 不是。你能不将整数转为字符串来解决这个问题吗?规则示例示例 1:输入:x = 121输出:true示例 2:输入:x = -121输出:false示例 3:输入:x = 10输出:false解释:从右向左读, 为 01 。因此它不是一个回文数。..

2022-05-20 20:58:10 912

原创 【唐老狮】Unity、C# 每日一题 NO.4

题目给定两个大小分别为 m 和 n 的正序(从小到大)数组nums1 和 nums2请你找出并返回这两个正序数组的中位数。算法的时间复杂度应该为 O(log (m+n)) 。规则示例规则:nums1.length == mnums2.length == n0 <= m <= 10000 <= n <= 10001 <= m + n <= 2000- 10的6次方 <= nums1[i], nums2[i] ..

2022-05-17 13:04:57 596

原创 【唐老狮】Unity、C# 每日一题 NO.3

题目给定一个字符串 s,请你找出其中不含有重复字符的最长子串的长度在函数中实现要求规则示例规则:0 <= s.length <= 5 * 104s 由英文字母、数字、符号和空格组成示例 1:输入: s = "abcabcbb"输出: 3解释: 因为无重复字符的最长子串是 "abc",所以其长度为 3。示例 2:输入: s = "bbbbb"输出: 1解释: 因为无重复字符的最长子串是 "b",所以其长度为 1。示例 3:输入:.

2022-05-16 15:02:50 428

原创 【唐老狮】Unity、C# 每日一题 NO.2

题目给你两个非空的链表,表示两个非负的整数它们每位数字都是按照逆序的方式存储的并且每个节点只能存储一位数字请你将两个数相加,并以相同形式返回一个表示和的链表你可以假设除了数字0之外,这两个数都不会以0开头链表类在函数中实现要求规则示例规则:示例1:输入:l1 = [2,4,3], l2 = [5,6,4]输出:[7,0,8]解释:342 + 465 = 807示例2:输入:l1 = [0], l2 = [0]输出:[0.

2022-05-13 11:24:17 318

原创 【唐老狮】Unity、C# 每日一题 NO.1

题目给定一个整数数组 nums 和一个整数目标值 target请你在该数组中找出 “和”为目标值target的那两个整数并返回它们的数组下标规则示例规则:你可以假设每种输入只会对应一个答案。但是,数组中同一个元素在答案里不能重复出现。你可以按任意顺序返回答案。示例1:输入:nums = [2, 7, 11, 15], target = 9输出:[0,1]解释:因为 nums[0] + nums[1] == 9 ,返回[0, 1]示例2:输入:num..

2022-05-11 11:18:51 393 1

原创 【唐老狮】C#四部曲之C#基础:习题汇总

本篇文章对视频教程《【唐老狮】Unity系列之C#四部曲—C#基础》当中的课后练习题进行了汇总,方便同学们统一进行练习和复习这些习题的解题部分都在本教程中以视频的形式进行了详细讲解B站免费试看:【唐老狮】Unity系列之C#四部曲—C#基础_哔哩哔哩_bilibili泰课会员免费看:https://www.taikr.com/goods/show/593本套课程属于Unity实战就业路线(打折预售中)https://www.taikr.com/goods/sho.

2022-04-29 17:59:23 3181

原创 【唐老狮】C#四部曲之C#入门:习题汇总

本篇文章对视频教程《【唐老狮】Unity系列之C#四部曲—C#入门》当中的课后练习题进行了汇总,方便同学们统一进行练习和复习这些习题的解题部分都在本教程中以视频的形式进行了详细讲解B站免费试看【唐老狮】Unity系列之C#四部曲—C#入门_哔哩哔哩_bilibili泰课会员免费看:https://www.taikr.com/goods/show/589本套课程属于Unity实战就业路线(打折预售中)https://www.taikr.com/goods/show/5.

2022-04-26 15:13:58 3059

原创 【唐老狮】Unity网络通信中的分包、黏包

在进行网络开发时,不管是前后端都需要处理消息的分包和黏包。那所谓的分包和黏包,它具体的含义是什么呢?分包:一个消息包被分成了多个消息包进行发送黏包:一个消息包和另一个消息包黏在了一起如果通过描述,你无法明白它的意思,那通过下面的这张图,我相信你的脑海里就会产生分包和黏包的画面感了。具体的表现是什么呢?在进行网络开发时,我们收发的消息都是以字节数组的形式存在的。消息A ——> 字节数组A(假设长度为32)消息B——>字节数组B(假设长度为24)黏包...

2022-04-21 13:28:22 2239

原创 【唐老狮】商业游戏开发前后端程序区别

客户端程序员=前端程序员包括Unity程序员UE程序员Cocos程序员Egret程序员Laya程序员Flash程序员等等服务端程序员=后端程序员包括C++程序员Java程序员Go程序员C#程序员等等内容概要 前后端核心技能点 前后端重点学习方向 前后端开发范畴 前后端工具开发 前后端核心技能点前端核心技能点 编程语言 c#、c++、ts、as 脚本语言 lua 常用数

2022-04-20 13:44:06 4195

原创 【唐老狮】游戏开发中常用物理公式

游戏开发中的会用到很多物理公式该篇文章主要介绍一些上层游戏逻辑实现时经常会使用到的简单物理公式重力相关G:重力m:质量g:9.8N/kg重力:G = m*g移动相关速度:V路程:S时间:t加速度:a初始速度:V0重力加速度:g匀速运动速度 = 路程/时间V = S / t加速运动平均速度:V平 = s / t中间时刻速度:V*t/2 = V平 = (V末 + V0)/2末速度:V末 = V0 ..

2022-04-19 18:04:49 321

原创 【唐老狮】游戏开发中常用数学公式

游戏开发中的会用到很多数学公式该篇文章主要介绍一些上层游戏逻辑实现时经常会使用到的简单数学公式在【唐老狮】Unity系列之Unity四部曲—Unity基础课程当中有专门针对Unity的3D数学的相关知识点讲解免费试听:【唐老狮】Unity系列之Unity四部曲—Unity基础_哔哩哔哩_bilibili购买链接:https://www.taikr.com/goods/show/620【三角形相关】勾股定理:a² + b² = c²三角函数相关:...

2022-04-11 13:34:24 969 1

原创 【唐老狮】字符编码(ASCII,Unicode和UTF-8)

【什么是字符编码】字符编码(英语:Character encoding)也称字集码是把字符集中的字符,编码为指定集合中某一对象,以便文本在计算机中存储或通过网络进行传递。说人话:计算机里只能存数字(2机制),所以如果文字字符想要进行存储的话,就需要把对应的文字字符转换为数字才能进行处理,而字符编码就是文字字符在计算机中和数值的对应关系,是人为定义的一种映射规则。比如:ASCII码(一种字符编码规则)中数值是65用来映射...

2022-04-06 11:32:41 636

原创 【唐老狮】C#——泛型约束

上篇回顾泛型语法class类名<占位字母>返回值类型函数名<占位字母>(参数类型参数...)概念泛型相当于类型占位符占位字母可以有多个占位字母一般为大写字母定义类或方法时使用替代符代表变量类型当真正使用类或者方法时再具体指定类型种类泛型类泛型方法上一篇文章,我们已经学习了泛型的基本知识点,泛型就是一个可以替代任何类型的一个占位符。那么如果我想约束使用者可以用的类型,应该如何处理呢?今天学习的知识...

2022-03-30 12:27:03 2081

原创 【唐老狮】C#——泛型

【泛型】语法class类名<占位字母>返回值类型 函数名<占位字母>(参数类型参数...)概念泛型相当于类型占位符占位字母可以有多个占位字母一般为大写字母定义类或方法时使用替代符代表变量类型当真正使用类或者方法时再具体指定类型种类泛型类泛型方法【泛型类】【泛型方法】泛型类中的泛型方法普通类中的泛型方法【泛型替代符数量不定】...

2022-03-29 12:07:09 680

原创 【唐老狮】C#——Hashtable

【Hashtable】本质哈希表特点存在装箱拆箱存储任意类型键值对成对出现一个键对应一个值通过键快速查找值【声明】需要引用命名空间【添加】向Hashtable中添加键值对Add方法【获取】通过键快速获取值以中括号的形式访问【移除】移除键值对Remove方法【查看是否存在】查看键是否存在ContainsKey方法查看值是否存在ContainsVal.

2022-03-26 12:16:23 577

原创 【唐老狮】C#——Queue

【Queue】本质队列特点先进先出存在装箱拆箱存储任意类型无法遍历查看元素无法获取指定位置元素只能查看获取头部元素Queue是队列存储容器,队列是一种先进先出的数据结构,先存入的数据先获取,后存入的数据后获取。如图【声明】需要引用命名空间【添加】向队列中添加元素Enqueue方法【获取】移除并获取头部元素Dequeue方法【查看】查看头部元素...

2022-03-25 10:24:29 1009 1

原创 【唐老狮】C#——Stack

【Stack】本质栈特点先进后出存在装箱拆箱存储任意类型无法遍历查看元素无法获取指定位置元素只能查看获取栈顶元素Stack是栈存储容器,栈是一种先进后出的数据结构,先存入的数据后获取,后存入的数据先获取。如图【声明】需要引用命名空间【添加】向栈中添加元素Push方法【获取】移除并获取栈顶元素Pop方法【查看】查看栈顶元素Peek方法...

2022-03-22 17:44:50 380

原创 【唐老狮】C#——ArrayList

【ArrayList】本质object数组特点自动调整空间大小存在装箱拆箱存储任意类型ArrayList是一个C#为我们封装好的类,它的本质是一个object类型的数组,ArrayList类帮助我们实现了很多方法,比如数组的增删查改,都提供给了我们对应的方法,方便我们使用,不需要我们自己来实现相关的逻辑。回顾数组的存储结构数组的声明必需一开始就声明好具体占多少内存空间,当我们进行增删查改时需要考虑扩容和移位相关的复杂操作...

2022-03-21 11:32:57 1114

原创 【唐老狮】C#——命名空间

【命名空间】关键字namespace作用管理类将代码模块化特点命名空间可以被包裹允许不同命名空间中存在同名类使用不同空间中同名类需要指明出处命名空间可以通过using关键字引用语法​​命名空间的主要作用是管理各种类,不同功能不同模块的类放在不同的命名空间中进行管理,可以让代码逻辑更清晰,使用更方便。【不同命名空间中可以有同名类】【命名空间可被包裹】【命名空间的引用】​...

2022-03-18 14:04:32 811

原创 【唐老狮】C#——万物之父中的方法

知识点回顾万物之父关键字object概念object是所有类型的基类它是一个类(引用类型)作用可以利用里氏替换原则用object装所有对象可以用来表示不确定类型作为函数参数类型选中输入的object按F12或者右键转到定义​​我们可以看到作为万物之父的object本质上就是一个Object类,里面有2个静态方法,3个虚方法,2个普通成员方法。其中对于我们来说,常被我们重写和使用的就是ToString方法...

2022-03-17 12:08:37 1273

原创 【唐老狮】C#——多态:接口

目前多余多态的实现,我们已经学习了两种方式:vob以及抽象类和抽象函数。今天我们要来学习最后一个关于多态实现的知识点——接口!在学习它之前我们先来回顾一下重要知识点。【vob】多态的概念同一类型对象执行相同行为有不同的表现多态的实现↓↓↓↓编译时多态函数重载运行时多态虚函数(vob)抽象函数接口vobvirtual(虚函数)override(重写)v和o结合使用实现多态base(父类)保留...

2022-03-15 11:47:48 445

原创 【唐老狮】C#——多态:抽象类和抽象方法

上篇回顾概念同一类型对象执行相同行为有不同的表现多态的实现↓↓↓↓编译时多态函数重载运行时多态虚函数(vob)抽象函数(之后讲)接口(之后讲)vobvirtual(虚函数)override(重写)v和o结合使用实现多态base(父类)保留父类行为​​上一篇我们已经学习了多态的基本概念,和利用vob来实现多态。今天我们将学习多态的另一种实现——抽象类和抽象函数。【抽象类和抽象函数】...

2022-03-11 12:21:06 414

原创 【唐老狮】C#——多态和vob

​​截止目前,我们已经学会了面向对象中封装和继承两大特性的相关知识点。简单理解它们,封装就是用代码形容一个现实对象,继承就是复用代码,通过继承可以让类之间建立父子关系,复用一些特征和行为。​​那么,我们接下来要继续学习最重要的一个特性——多态。【多态】概念同一类型对象执行相同行为有不同的表现为什么要学习多态? ​​根据多态的概念,很多同学可能会写出如上的代码,子类中重新实现一个SpeakName的方法,前面加一...

2022-03-10 14:11:17 775

原创 【唐老狮】C#——继承:密封类

上篇回顾【万物之父】关键字object概念object是所有类型的基类它是一个类(引用类型)作用可以利用里氏替换原则用object装所有对象可以用来表示不确定类型作为函数参数类型【装箱拆箱】发生条件用object存值类型(装箱)再把object转为值类型(拆箱)装箱把值类型用引用类型存储栈内存会迁移到堆内存中拆箱把引用类型存储的值类型取出来堆内存会迁移到栈内存中好处不确定类型时

2022-03-08 10:38:47 465

原创 【唐老狮】C#——继承:万物之父和装箱拆箱

上篇回顾继承中构造函数的特点当声明一个子类对象时构造函数的执行顺序先执行父类的再执行子类的父类构造↓↓↓父类构造↓↓↓.......↓↓↓子类构造默认调用父类无参构造所以父类无参构造很重要子类可以通过base关键字代表父类调用父类构造base和this用法相似​​之前我们已经学习了里氏替换原则,我们可以用父类容器装子类对象。今天要学习的知识就是基于里氏替换原则的。什么!你已经忘记里氏替...

2022-03-07 11:55:14 463

原创 【唐老狮】C#——继承:构造函数

上篇回顾里氏替换概念​父类对象装子类对象作用方便进行对象存储和管理使用is和asis用于判断父类是不是指定类型的子类as用于转换父类类型转换为子类类型对象当然父子可以相互转换今天的标题是继承:构造函数,很多同学肯定有疑问,我们在封装时不是已经学习了构造函数吗?继承后的构造函数有什么不同吗?那首先,我们回顾一下在封装中学习的构造函数。构造函数实例化对象时调用的函数主要用来初始化成员变量不写返回值函数名和类名相同...

2022-03-05 10:56:00 3603 4

原创 【唐老狮】C#——继承:里氏替换原则(is和as)

上篇回顾继承概念一个类A继承一个类B类A将会继承类B的所有成员A类将拥有B类的所有特征和行为被继承的类称为父类、基类、超类继承的类称为子类、派生类子类可以有自己的特征和行为特点单根性(只能有一个父类)传递性(子类可以间接继承父类的父类)注意访问修饰符的作用public-公共子类和外部都能访问private-私有自己才能访问protected-保护自己和子类才能访问子类有和父..

2022-03-04 12:16:13 1452 1

原创 【唐老狮】C#——继承:基本规则

​​通过之前的文章,我们已经把封装相关知识点全部学习完毕了,我们已经可以游刃有余的用面向对象的思想用程序去形容一个现实事物了。​​今天我们正式开始学习继承相关的知识点,它可以帮助我们节约代码量,理清对象之间的关系。【继承】概念一个类A继承一个类B类A将会继承类B的所有成员A类将拥有B类的所有特征和行为被继承的类称为父类、基类、超类继承的类称为子类、派生类子类可以有自己的特征和行为比如...

2022-03-01 13:43:05 655

原创 【唐老狮】C#——封装:内部类和分部类

​​目前,我们几乎已经把面向对象封装特性的重要知识点学习完了。今天要讲的内部类和分部类,在实际开发中用的较少,只需了解即可。学习它们的目的是当你遇到了要看得懂。​【内部类】概念在一个类中再声明一个类特点使用时要用包裹者点出自己作用亲密关系的表现注意访问修饰符作用很大​​如上面的代码,Body类可以认为和Person类关系非常亲密,它一定是和Person类关联在一起使用的,Arm类和Body类的关系同理,所...

2022-02-28 12:21:32 511

原创 【唐老狮】C#——封装:运算符重载

​​目前我们学过的变量中,除了几种自定义的变量(结构体、类、枚举),语言本身的13种常用变量类型byte、int、float等等都默认支持用运算符进行计算,也支持条件运算符进行比较。今天我们要学习的内容就是如何让自定义的类型能够使用运算符进行运算和比较!【运算符重载】概念让自定义类和结构体能够使用运算符关键字operator固定语法public static返回值operator运算符(参数列表)特点一定是一个公共的静态方法返回值...

2022-02-26 12:53:30 304

原创 【唐老狮】C#——封装:拓展方法

上篇回顾静态类用static修饰的类只能包含静态成员不能被实例化作用工具类拓展方法静态构造函数静态类和普通类都可以有用static修饰的构造函数不能使用访问修饰符不能有参数自动调用作用初始化静态成员通过上两篇文章,我们已经学习了关于static的关键知识:静态成员、静态类和静态构造函数。我们今天要学习一个关于静态的高级知识点,也是之后在Unity中肯定会涉及到的知识点——拓展方法。【拓展方法】概念...

2022-02-25 11:38:13 522

原创 【唐老狮】C#——封装:静态类和静态构造函数

上篇回顾静态关键字static静态成员用static修饰的成员变量成员方法成员属性等特点直接用类名点出使用生命周期同生共死会一直存在内存中直到程序结束后才会被释放因此静态成员具有唯一性注意静态函数中不能直接使用非静态成员非静态函数中可以直接使用静态成员常量和静态变量常量是特殊的静态变量相同点它们都可以通过类名点出使用不同点const必须初始化,不能修改static没有这个规则

2022-02-23 13:15:44 678 2

原创 【唐老狮】C#——封装:静态成员

​​关于面向对象三大特性之封装,我们已经学习了许多知识点:类和对象、成员变量和访问修饰符、成员方法(函数)、构造函数和析构函数、成员属性、索引器。当你看到这些知识点时,如果发现自己已经不清楚或者忘记了,你可以再看看前几篇文章来进行回顾。​​今天我们要讲的是一个非常重要的知识点,是面试中经常会问到的内容——静态成员。【静态成员】静态关键字static静态成员用static修饰的成员变量成员方法成员属性等特点直接...

2022-02-22 13:24:44 754

原创 【唐老狮】C#——封装:索引器

​​还记得我们学过的数组吗?数组可以通过中括号array[0]中括号包裹索引的形式得到指定位置的数组元素。​​我们今天要学习的索引器,它的作用就是允许类或结构体的实例按照和数组相同的方式进行索引访问。【索引器】索引器类似成员属性使用get和set语句块索引器的固定写法访问修饰符返回值this[参数]内部规则和属性的get和set规则一样索引器的get和set中可以写逻辑索引器的参数类型可以...

2022-02-20 11:53:32 504

原创 【唐老狮】C#——封装:成员属性

上篇回顾构造函数实例化对象时调用的函数主要用来初始化成员变量不写返回值函数名和类名相同访问修饰符根据需求而定一般为public可以重载构造函数可以用this语法重用代码可以用this区分同名参数和成员变量有参构造会顶掉默认的无参构造如想保留无参构造需重载出来析构函数当类对象被垃圾回收时调用主要用来回收资源或者特殊处理Unity中几乎不用不写返回值不写修饰符不能有参数函数名和类名相同前面加~

2022-02-19 21:58:25 408

原创 【唐老狮】C#——封装:构造函数和析构函数

上篇回顾成员方法描述行为类中声明任意数量返回值和参数根据需求决定今天我们将来学习两个特殊的成员函数(方法)构造函数析构函数【构造函数】默认存在一个无参构造函数如何自己实现一个构造函数构造函数一般是用来初始化信息的构造函数的访问修饰符一般public如果是private外部就无法new对象了构造函数可以被重载不手动实现无参构...

2022-02-18 12:46:55 746

原创 【唐老狮】C#——封装:成员方法

上篇回顾访问修饰符决定成员变量的访问权限public——公共private——私有成员变量在类中声明的变量描述特征赋值随意任意类型任意数量今天我们将来学习对象的行为成员方法【成员方法】​​通过前几篇文章,我们已经可以用成员变量在类中形容对象的特征了,但是对于对象来说,只有特征是不够的。比如人的特征:姓名,年龄,性别,国籍等等都可以通过成员变量来表示,但是对于人的行为:走路,吃饭,睡觉等等,用成员变量是不能够表...

2022-02-16 13:21:10 717 1

原创 【唐老狮】C#——封装:成员变量和访问修饰符

​上篇回顾类是对象的模板用来抽象现实对象对象是类的实例用来表示现实对象个体类是一个自定义变量实例化类对象是在声明变量今天我们将来学习对象的特征成员变量【成员变量】面向对象编程思想,简单点说就是用程序语言来抽象(形容)出现实对象。现在我们已经知道类是用来形容对象的,而对象是类实例化出来的。而具体对象的特征和行为在类中表现主要是通过:成员变量和成员方法体现的。成员变量↓↓↓↓在类里...

2022-02-14 15:06:56 645

原创 【唐老狮】C#——封装:类和对象

通过上一篇文章,我们已经基本了解了面向对象编程的基本概念:万物皆对象,用程序代码来形容各对象,用面向对象的思想来编写程序。那么今天我们就来看看在程序中如何来形容对象。【类和对象】【什么是类?】具有相同特征具有相同行为一类事物的抽象类是对象的模板可以通过类创建出对象类的关键词class类一般写在namespace语句块中以上这些我们都称为类人类机器类植物类现在这些类内部还没有用于具体形...

2022-02-13 16:39:30 608

原创 【唐老狮】面向对象——概念

【面向对象】万物皆对象用程序来抽象(形容)对象面向对象的思想来编程 ​​面向对象编程(Object Oriented Programming,OOP),它是一种主流编程思想。​​面向对象编程的思想很简单,最简单的套路是用中文去形容一类对象,把一类对象的共同点提取出来,然后用程序语言把它翻译过来,带着对象的概念在程序中使用它们。​​就好像我们在下一盘棋,各个棋子就是一个个的对象,他们各司其职,我们只需要在程序中控制使用它们...

2022-02-11 08:30:00 381

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除