小学生之深入C#

一、深入C#数据类型 

值类型传递和引用类型传递

方法的参数是值类型和引用类型

注意:值传递和引用传递判定依据是有没有ref

01.如果方法的参数类型本身就是引用类型,那么对参数值的修改会永久保存

例如:public void TP(SE se)

{

se.Count++;//真正的修改se对象的Count值

}

02.如果方法的参数类型本身是值类型,又没有ref修饰,那么对参数值的修改,不会永久保存()

03.如果方法的参数类型本身是值类型,但是有ref修饰,那么对象参数值的修改,也会永久保存。

值类型传递 :不带ref的参数传递

引用类型传递:带ref的参数传递

实例(经理评分)效果图如下:

关键代码如下:

二、使用集合组织相关数据

  

1、集合概念引入

集合:某些指定的对象集在一起就是集合

如下是一个Hello Kitty的集合

数组:可以存储相同数据类型的一堆数据的容器

三、集合中元素操作(添加,遍历,删除、常见错误)

3.常见属性:

Capacity:集合占用空间

Count:集合存储元素个数

4.常用方法:

添加:int Add(Object value) //添加一个对象到集合的末尾

遍历:通过foreach遍历

删除:Remove()、RemoveAt()和Clear()

*:注意事项:如果删除了集合中的某一个元素,那么集合的索引会自动维护

Remove():删除内容

RemoveAt():通过索引删除

Clear():一次性移除集合中所有的元素

Contains():是否包含某个元素

5、集合初始化器

ArrayList engineers = new ArrayList()

{

new SE(){Name = "周星星",Age = 26,

Gender = Gender.male,ID = "000",Popularity = 10},

new SE(){Name = "王贱贱",Age = 22,

Gender = Gender.female,ID = "111",Popularity = 20},

new SE(){Name = "周姐姐",Age = 30,

Gender = Gender.male,ID = "222",Popularity = 20}

};

6、HashTable

Hashtable 通常称为哈希表

根据键(Key)可以查找到相应的值 (Value)

★1.HashTable注意事项

01.HashTable类型的集合只能用foreach循环遍历

02.HashTable集合中元素时无序的(不会按照Add的顺序来展示元素内容)

03.HashTable中的key不能重复

04HashTabel没有RemoveAt()

★2.对HashTable遍历三种方案:

☆:第一种方式,遍历所有的keys,通过key的值获取value

☆:第二种方式:遍历所有的value集合

☆:第三种方式,同时遍历key和value

Eg:

foreach (DictionaryEntry item in table)

{

Console.WriteLine(item.Key + "value==" + item.Value);

}

7、泛型集合List<T>

泛型:就是为了约束ArrayList中元素类型,而制定的一个新的集合类型,该类型只能加入同一类型的多个元素,标识符<T>,可以看成是一个占位符,泛型是将运行时错误提前到了编译时

8、泛型集合Dictionary<K,V>

Dictionary<string,Person> dic=new Dictionary<string, Person>();

实例(员工签到)效果图如下:

关键代码如下:

知识小结项目(如图):

关键代码如下:

时间: 2024-08-06 07:15:25

小学生之深入C#的相关文章

软件工程第一次作业,小学生四则运算的出题程序

一.背景 阿超有个儿子上小学二年级,老师每天让家长给孩子出30道加减法题,虽然不多,但是每天都做也算是个负担,阿超作为一个老牌程序员当然想用计算机来解决这个小问题,目前对于这个问题对于任何语言都不是问题,比如: C/C++.C#.Java.Python.VB.JavaScript.Perl…… 具体要求如下: 能自动生成小学四则运算题目(注意是给小学生用的,要是结果出现负数的话他们会迷茫的!) 除了整数外,还要支持真分数的四则运算 请大家用任何一种自己擅长的语言来编写这段程序,并把程序的介绍和自

小学生除法

这次老师让我们写一个小学生100以内四则运算的程序,同时还要支持真分数的运算. 对这道题写程序前我的主要思路如下: 1.数字和符号都要是随机生成的,主要用到随机数生成函数srand()和rand()这两个函数来生成随机数.其中运算数是100以内的,符号是4种情况. 2.其中除法运算中除数不能为零要做出判断.对于真分数来说,其分母也不可为零. 3.减法运算中被减数一定要大于减数,因为对于小学生来说不会计算负数. 4.对于真分数有一点特别的,随机生成的分子和分母有可能可以约分.所以我们每次都要先计算

小学生四则运算

package yun; import java.util.Random; import java.util.*; public class number { /** * 作者:范铭祥 * 功能:一个简单的小学生四则运算生成系统 */ public static void main(String[] args) { int max=4; int min=1; Random random = new Random(); //System.out.println(s); boolean pan=tr

小学生算术

#include<iostream> #include<memory.h> using namespace std; int main() { char m[4],n[4]; cin>>m>>n; int temp[4]; while(m[0]!='0'&&n[0]!='0') { int N=0; memset(temp,0,sizeof(temp)); for(int i=2;i>=0;i--) { temp[i]=temp[i]+

小学生四则运算程序

需求分析: 为小学生能够出四则运算的题,并且能对其所答的答案进行判断,如答错能显示正确答案. 代码设计: 生成随机数和运算符: int convert(ZX number[100]) { stack<ZX>s2; for(int i=0;i<t;i++) { if(number[i].b==1)//操作数 s2.push(number[i]); else { if(number[i].a==')') { while(s1.top().a!='(') { s2.push(s1.top())

自动生成小学生四则运算(C语言)

我写的这个自动生成小学生四则运算的代码是根据我在百度上看到的一篇博客改的,地址为http://www.cnblogs.com/ys1101/p/4368103.html.它的功能不够完整,只有整数的加.减.乘.除,我在此基础上增加了真分数的加.减.乘.除,及统计分数.我把我写的代码放在了GitHub上,地址为https://github.com/cygoodboy/helloworld.

自动生成小学生四则运算(皮!)

自动生成小学生四则运算(皮!) coding 地址 https://coding.net/u/smile12231/p/Demo/git a·需求分析 在这个家长希望自己的小孩能够赢在起跑线的社会,通常寻找很多的练习给小学生做,所以我们就来编写一个四则运算的软件,你懂我意思吧!这个软件能够 ①丶根据用户想要的出题量生成题目 ②丶生成的题目包括整数和分数的加减乘除 ③丶能够自动判断答案是否正确并给出此次的正确率 ④丶使用 -n 参数控制生成题目的个数,例如执行下面命令将生成10个题目 b丶功能设计

大一C语言第一次实验:小学生教学系统

高级语言程序设计报告   打印版报告截止上交日期:2014年11 月 15 日 电子版报告发至[email protected]qq.com, 邮件标题写明报告次数序号姓名 序号 34 姓名 许恺 照片   成绩   E-MAIL及电话 18810556775 实习题目 第一次作业: 函数 七章实验题之素数探求2-6 七章实验题之小学生计算机辅助教学系统(用模块化程序设计方法完成六章之任务6即可) 此2题单独编程,即不在ACM系统中完成. 要求综合运用本章所学内容(注释.起名规则.缩进等).  

结伴项目:小学生四则运算.

结伴:杨钰宁 闫浩楠 需求分析:           1.适用人群:小学生. 2.能进行"+,-,*,/" 的四则运算.难度可以随时修改. 3.提交试卷后可以显示所得分数并显示错题个数. 4.可以显示答对的题及其打错的题的序号. 代码如图所示: 1.导入随机数生成模块. 2.分别定义加,减,乘,除四个运算类: 3.定义主函数. 运行结果如图所示: 开发心得: 本程序独立完成,疑点通过上网查询精心解决.Python里有许多已经封装好的BIF函数,可以直接进行调用.如代码中生成随机数的ra

安卓小学生四则运算

安卓Activity: package com.example.count_number; import android.os.Bundle;import android.app.Activity;import android.view.View;import android.view.View.OnClickListener;import android.widget.Button;import android.widget.EditText; public class MainActivit