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移动

相关推荐
CSCN新手听安4 小时前
list的常用操作
数据结构·list
梅茜Mercy6 小时前
数据结构:链表(经典算法例题)详解
数据结构·链表
88号技师6 小时前
2024年12月一区SCI-加权平均优化算法Weighted average algorithm-附Matlab免费代码
人工智能·算法·matlab·优化算法
IT猿手6 小时前
多目标应用(一):多目标麋鹿优化算法(MOEHO)求解10个工程应用,提供完整MATLAB代码
开发语言·人工智能·算法·机器学习·matlab
青春男大6 小时前
java栈--数据结构
java·开发语言·数据结构·学习·eclipse
88号技师6 小时前
几款性能优秀的差分进化算法DE(SaDE、JADE,SHADE,LSHADE、LSHADE_SPACMA、LSHADE_EpSin)-附Matlab免费代码
开发语言·人工智能·算法·matlab·优化算法
Zer0_on6 小时前
数据结构栈和队列
c语言·开发语言·数据结构
一只小bit6 小时前
数据结构之栈,队列,树
c语言·开发语言·数据结构·c++
我要学编程(ಥ_ಥ)7 小时前
一文详解“二叉树中的深搜“在算法中的应用
java·数据结构·算法·leetcode·深度优先
埃菲尔铁塔_CV算法7 小时前
FTT变换Matlab代码解释及应用场景
算法