c#考试知识点

第一题



//数组{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移动

  • 5
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值