c#考试知识点

第一题

cs 复制代码
//数组{1,2,3,,8,6}
//方法(数组,目标值)
//输出
//接收一个数组,输出目标值是数组中哪两个数的和,并输出下标
using System;
using System.Collections.Generic;//使用字典
class Program
{
    static void Main()
    {
        //实例化对象
        Solution solution = new Solution();
        int[] nums = { 1, 2, 3, 4, 5, 6 };
        int target = 11;
        int[] result = solution.TowSum(nums, target);
        Console.WriteLine("["+result[0]+","+result[1]+"]");
    }
}
public  class Solution
{
    public int[] TowSum(int[] nums,int target)
    {
        //初始化字典,特点:键值对来存储数据
        //键必须是唯一的,尝试添加重复的键会抛出 ArgumentException
        //键不能为 null,如果键类型是引用类型,确保键不为 null,否则会抛出 ArgumentNullException。
        //值可以是 null,具体取决于值的类型。
        Dictionary<int ,int>numMap=new Dictionary<int ,int>();

        for(int i=0;i<nums.Length;i++)
        {
            //目标值-数组的其中一个元素=数组的另一个元素
            int conplement = target - nums[i];
            //ContainsKey 是 Dictionary 类中的一个方法,用于检查字典中是否包含特定键
            //返回值为bool
            if (numMap.ContainsKey(conplement))
            {
                // 返回这两个元素的索引
                return new int[] { numMap[conplement],i };
            }
            // 如果字典中不存在这个差值,将当前元素及其索引存入字典
            numMap[nums[i]] = i;
        }
        // 如果循环结束后仍未找到,抛出异常,表示目标值在数组中不存在
        throw new ArgumentException("该目标指在数组中不存在");
    }
}

其他知识点

一、数组的声明

1.指定数组大小和类型直接声明

int[] 数组名=new int[6]

2.直接声明初始化

int[] 数组名={元素1,元素2、、、、、、}

二、特殊背记知识点

1、装箱:把值类型转换为引用类型

拆箱:把引用类型转换成值类型

2、面向对象的三大特性:封装、继承、多态

3、Sealed关键字修饰不允许继承,c#不支持多继承,只允许继承一个父辈

继承是耦合的直接体现,要少点继承

4.for(;;){ }是一个死循环,会一直执行方法体

5.Dictionary特点:键值对储存数据

6.Trim()去掉两端空格的方法

7.{ }符号通常称为代码块,{ 代表代码块中代码的开始,} 表示代码块中的代码结束

8.参数值传递和引用传递

9.==比较运算符,比较两个值的大小

10.逻辑与&&:全真则真,一假全假

11.逻辑或||一真则真

12.c#中的bool值只有true和false

13.String 字符串用符号"+"来连接

14.循环遇到break终止

15.switch语句中必有标签break,default可以不用有

16.goto标签在实际开发中不建议使用

1.如何实现碰撞功能(碰撞的必要条件)OnCollisonEnter

2.unity中如何实现触发功能(设置触发区域),OnTriggerEnter(碰撞器组件)

3.按键处理

(1)如何获取水平轴Horizontal

(2)如何获取垂直轴Vertical

(3)如何获取特定的按键KeyCode.F

(4)如何实现按wasd移动

相关推荐
我爱一条柴ya6 分钟前
【AI大模型】线性回归:经典算法的深度解析与实战指南
人工智能·python·算法·ai·ai编程
七灵微42 分钟前
数据结构实验习题
数据结构
阿蒙Amon1 小时前
C#扩展方法全解析:给现有类型插上翅膀的魔法
开发语言·c#
三维重建-光栅投影2 小时前
VS中将cuda项目编译为DLL并调用
算法
课堂剪切板4 小时前
ch03 部分题目思路
算法
山登绝顶我为峰 3(^v^)35 小时前
如何录制带备注的演示文稿(LaTex Beamer + Pympress)
c++·线性代数·算法·计算机·密码学·音视频·latex
Two_brushes.6 小时前
【算法】宽度优先遍历BFS
算法·leetcode·哈希算法·宽度优先
森焱森8 小时前
水下航行器外形分类详解
c语言·单片机·算法·架构·无人机
QuantumStack10 小时前
【C++ 真题】P1104 生日
开发语言·c++·算法
写个博客11 小时前
暑假算法日记第一天
算法