|
16、集合复习
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Collections;
namespace _16_集合复习
{
class Program
{
static void Main(string[] args)
{
// ArrayList list = new ArrayList();
//// list.Add()
// Hashtable ht = new Hashtable();
// //ht.Add()
// List list = new List();
//list.Add(); 添加单个元素
//list.AddRange();添加集合
//list.Insert();插入
//list.InsertRange();插入集合
//list.Remove();移除
//list.RemoveAt();根据下标移除
//list.RemoveRange();移除一定范围的元素
//list.Contains();//判断是否包含
// list.RemoveAll()
//Dictionary dic = new Dictionary();
//dic.Add(1,"张三");
//dic.Add(2,"李四");
//dic.Add(3, "颜世伟");
//dic.Add(4, "杀马特");
//dic[4] = "还是杀马特";
//foreach (KeyValuePair kv in dic)
//{
// Console.WriteLine("{0}---{1}",kv.Key,kv.Value);
//}
//Console.ReadKey();
//dic.ContainsKey();
}
}
}
17集合练习
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace _17集合练习
{
class Program
{
static void Main(string[] args)
{
#region 集合练习1
//案例:把分拣奇偶数的程序用泛型实现。int[] nums={1,2,3,4,5,6,7,8,9};奇数在左边 偶数在右边
//int[] nums = { 1, 2, 3, 4, 5, 6, 7, 8, 9 };
//List listJi = new List();
//List listOu = new List();
//for (int i = 0; i < nums.Length; i++)
//{
// if (nums % 2 == 0)
// {
// listOu.Add(nums);
// }
// else
// {
// listJi.Add(nums);
// }
//}
//listJi.AddRange(listOu);
//foreach (var item in listJi)
//{
// Console.WriteLine(item);
//}
//Console.ReadKey();
#endregion
#region 集合练习2
//练习1:将int数组中的奇数放到一个新的int数组中返回。
//将数组中的奇数取出来放到一个集合中,最终将集合转换成数组 。
//int[] nums = { 1, 2, 3, 4, 5, 6, 7, 8, 9 };
//List listJi = new List();
//for (int i = 0; i < nums.Length; i++)
//{
// if (nums % 2 != 0)
// {
// listJi.Add(nums);
// }
//}
////集合转换成数组
//int[] numsNew = listJi.ToArray();
//foreach (var item in numsNew)
//{
// Console.WriteLine(item);
//}
//Console.ReadKey();
#endregion
#region 集合练习3
//练习2:从一个整数的List中取出最大数(找最大值)。
//集合初始化器
//List list = new List { 1, 2, 3, 4, 5, 6, 7, 8, 9 };
//int max = list[0];
//for (int i = 0; i < list.Count; i++)
//{
// if (list > max)
// {
// max = list;
// }
//}
//Console.WriteLine(max);
//Console.ReadKey();
////foreach (var item in list)
////{
//// Console.WriteLine(item);
////}
//Console.ReadKey();
// list.AddRange(new int[] { 1, 2, 3, 4, 5, 6, 7, 8, 9 });
//Person p = new Person("李四", 16, '女') { Name = "张三", Age = 19, Gender = '男' };
//p.SayHello();
//Console.ReadKey();
#endregion
#region 集合练习4
//练习:把123转换为:壹贰叁。Dictionary
//"1一 2二 3三 4四 5五 6六 7七 8八 9九"
//string str = "1一 2二 3三 4四 5五 6六 7七 8八 9九";
////123 一二三
//Dictionary dic = new Dictionary();
//string[] strNew = str.Split(new char[] { ' ' }, StringSplitOptions.RemoveEmptyEntries);
//for (int i = 0; i < strNew.Length; i++)
//{
// //1一 strNew[0] strNew[1]
// dic.Add(strNew[0], strNew[1]);
//}
//Console.WriteLine("请输入阿拉伯数字");
//string input = Console.ReadLine();
//for (int i = 0; i < input.Length; i++)
//{
// if (dic.ContainsKey(input))
// {
// Console.Write(dic[input]);
// }
// else
// {
// Console.Write(input);
// }
//}
//Console.ReadKey();
#endregion
#region 集合练习5
////练习:计算字符串中每种字符出现的次数(面试题)。 “Welcome to Chinaworld”,不区分大小写,打印“W2”“e 2”“o 3”……
//string s = "Welcome to Chinaworld";
//Dictionary dic = new Dictionary();
////遍历 s
//for (int i = 0; i < s.Length; i++)
//{
// if (s == ' ')
// {
// continue;
// }
// if (dic.ContainsKey(s))
// {
// dic[s]++;
// }
// else
// {
// dic[s] = 1;
// }
//}
//foreach (KeyValuePair kv in dic)
//{
// Console.WriteLine("字母{0}出现了{1}次",kv.Key,kv.Value);
//}
//Console.ReadKey();
#endregion
#region 集合练习5
//案例:两个(List)集合{ “a”,“b”,“c”,“d”,“e”}和{ “d”, “e”, “f”, “g”, “h” },把这两个集合去除重复项合并成一个。
//List listOne = new List() { "a", "b", "c", "d", "e" };
//List listTwo = new List() { "d", "e", "f", "g", "h" };
//for (int i = 0; i < listTwo.Count; i++)
//{
// if (!listOne.Contains(listTwo))
// {
// listOne.Add(listTwo);
// }
//}
//foreach (var item in listOne)
//{
// Console.WriteLine(item);
//}
//Console.ReadKey();
#endregion
}
}
public class Person
{
public Person(string name, int age, char gender)
{
this.Name = name;
this.Age = age;
this.Gender = gender;
}
public string Name
{
get;
set;
}
public char Gender
{
get;
set;
}
public int Age
{
get;
set;
}
public void SayHello()
{
Console.WriteLine("{0}---{1}---{2}", this.Name, this.Age, this.Gender);
}
}
}
18、静态和非静态的区别
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace _18_静态和非静态的区别
{
class Program
{
static void Main(string[] args)
{
Student.Test();
Student.Test();
Student.Test();
Console.ReadKey();
}
}
public class Person
{
private static string _name;
private int _age;
public void M1()
{
}
public static void M2()
{
}
public Person()
{
Console.WriteLine("非静态类构造函数");
}
}
public static class Student
{
static Student()
{
Console.WriteLine("静态类构造函数");
}
public static void Test()
{
Console.WriteLine("我是静态类中的静态方法");
}
// private string _name;
}
}
19、结构和类的区别
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace _19_结构和类的区别
{
class Program
{
static void Main(string[] args)
{
//类型
//结构:值类型
//类:引用类型
//声明的语法:class struct
//在类中,构造函数里,既可以给字段赋值,也可以给属性赋值。构造函数是可以重载的
//但是,在结构的构造函数当中,必须只能给字段赋值。
//在结构的构造函数当中,我们需要给全部的字段赋值,而不能去选择的给字段赋值
//调用:
PersonClass pc = new PersonClass();
//结构是否可以New?
//在栈开辟空间 结构new 调用结构的构造函数
PersonStruct ps = new PersonStruct();
ps.M2();
PersonStruct.M1();
Console.ReadKey();
//结构和类的构造函数:
//相同点:不管是结构还是类,本身都会有一个默认的无参数的构造函数
//不同点:当你在类中写了一个新的构造函数之后,那个默认的无参数的构造函数都被干掉了
//但是,在结构当中,如果你写了一个新的构造函数,那么个默认的无参数的构造函数依然在。
//
//如果我们只是单纯的存储数据的话,我们推荐使用结构。
//如果我们想要使用面向对象的思想来开发程序,我们推荐使用我们的Class
//结构并不具备面向对象的特征
// int
}
}
public class PersonClass
{
//字段、属性、方法、构造函数
}
public struct PersonStruct
{
//字段、属性
private string _name;
public string Name
{
get { return _name; }
set { _name = value; }
}
private int _age;
public int Age
{
get { return _age; }
set { _age = value; }
}
private char _gender;
public char Gender
{
get { return _gender; }
set { _gender = value; }
}
public static void M1()
{
Console.WriteLine("我是结构中的静态方法");
}
public void M2()
{
Console.WriteLine("我是结构的非静态方法");
}
public PersonStruct(string name, int age, char gender)
{
//this.Name = name;
//this.Age = age;
//this.Gender = gender;
this._name = name;
this._age = age;
this._gender = gender;
}
//public PersonStruct(string name)
//{
// this._name = name;
//}
}
}
本文版权归原作者今日头条所有,如有侵权请联系管理员删除,原文地址:https://www.toutiao.com/a6718407069122167310/ |
|