1. 程式人生 > >c#基礎知識學習筆記

c#基礎知識學習筆記

using System;
using System.Collections;
class CourseScore
{
    private string name;
    private int courseID;
    private int score;

    public CourseScore(string name, int courseID, int score)
    {
        this.name = name;
        this.courseID = courseID;
        this.score = score;
    }

    public string Name
    {
        get { return name; }
        set { name = value; }
    }

    public int CourseID
    {
        get { return courseID; }
        set { courseID = value; }
    }

    public int Score
    {
        get { return score; }
        set { score = value; }
    }
}

class CourseScoreIndexer
{
    private ArrayList arrCourseScore;

    public CourseScoreIndexer()
    {
        arrCourseScore = new ArrayList();
    }

    public int this[string name, int courseID]
    {
        get
        {
            foreach(CourseScore cs in arrCourseScore)
            {
                if (cs.Name == name && cs.CourseID == courseID)
                    return cs.Score;
            }
            return -1;
        }
        set
        {
            arrCourseScore.Add(new CourseScore(name, courseID, value));
        }
    }

    public ArrayList this[string name]
    {
        get
        {
            ArrayList tempArray = new ArrayList();
            foreach (CourseScore cs in arrCourseScore)
            {
                if (cs.Name == name)
                    tempArray.Add(cs);
            }
            return tempArray;
        }
    }
}

class Test
{
    static void Main()
    {
        CourseScoreIndexer csi = new CourseScoreIndexer();
        csi["張三", 1] = 90;
        csi["張三", 2] = 70;
        csi["張三", 3] = 85;
        csi["李四", 1] = 80;
        Console.WriteLine(csi["張三", 2]);
        Console.WriteLine("張三的所有的課程成績為:");
        ArrayList tempArray;
        tempArray = csi["張三"];
        foreach (CourseScore cs in tempArray)
        {
            Console.WriteLine("姓名:{0} 課程:{1} 分數:{2}", cs.Name, cs.CourseID, cs.Score);
        }
        Console.Read();
    }
}

相關推薦

c#基礎知識學習筆記

using System; using System.Collections; class CourseScore { private string name; private int courseID; private int score;

python之 前端HTML/CSS基礎知識學習筆記

引號 編寫 css基礎 通用 浮動 我們 公司地址 將不 多行 1. 文件結構: HTML文件的固定結構: <html> <head>...</head> <body>...&l

MySQL數據庫基礎知識學習筆記(一)

mysql數據庫1、MySQL基礎與sql語句實戰 MySQL是一種關系型數據庫管理系統,在互聯網公司裏非常流行。Linux下用yum命令安裝 實操:連接數據庫172.16.41.89登錄mysql命令:Mysql -u root -p 回車,然後輸入密碼 查看數據庫:Show databases; 新建數

MySQL數據庫基礎知識學習筆記(二)

內連接 左連接 右連接 子連接 sql語句實戰--表連接 (多表查詢)標準SQL語句格式有以下4種:ü 表內連接Select col1,col2...from tab1,tab2 where tab1.col3=tab2.col3; Col1 列名 tab1表名 where tab1.co

MySQL數據庫基礎知識學習筆記(三)

select insert update delete count SQL語句實戰——DML語句(重點)選擇:select * from table1 where 範圍插入:insert into table1(filed1,filed2)values (filed1,filed2)解釋:

java基礎知識學習筆記

break 對比分析 簽名 java 發現 script char end 線程 本文知識點以js為參照。對比分析得出筆記。JavaScript之所以叫JavaScript是打算借助java推廣自己。雖然都是開發語言,但JavaScript一開始主要運行在 客戶端,而ja

Java核心技術 卷I 基礎知識 學習筆記(6)

參考:Java核心技術 卷I 基礎知識 介面,主要用來描述類具有什麼功能,而並不給出每個功能的具體實現。一個類可以實現一個或多個介面,並在需要介面的地方,隨時使用實現了相應介面的物件。介面不是類,是對類的一組需求描述,這些類要遵從介面描述的統一格式進行定義。 介面中的所有方法自

Java核心技術 卷I 基礎知識 學習筆記(5)

參考:Java核心技術 卷I 基礎知識 反射庫提供了一個非常豐富且精心設計的工具集,以便編寫能夠動態操縱Java程式碼的程式。這項功能被大量地應用與JavaBeans中,它是Java元件的體系結構。 能夠分析類能力的程式成為反射。反射機制的功能極其強大,在下面可以看到,反射機制

Java核心技術 卷I 基礎知識 學習筆記(4)

參考:Java核心技術 卷I 基礎知識 一個物件變數可以指示多種實際型別的現象被稱為多型。在執行時能夠自動地選擇呼叫哪個方法的現象被稱為動態繫結。 由一個公共超類派生出來的所有類集合被稱為繼承層次。在繼承層次中,通過某個特定類到其祖先的路徑被稱為該類的繼承鏈。 假設要呼叫x

Java核心技術 卷I 基礎知識 學習筆記(3)

參考:Java核心技術 卷I 基礎知識 類之間最常見的關係有:依賴、聚合、繼承 依賴即“use-a”關係,是一種最明顯的,最常見的關係。如果一個類的方法操作另一個類的物件,就說一個類依賴於另一個類。應該儘可能地將相互依賴的類減至最少。 聚合即“has-a”關係,是一種具體且

Java核心技術 卷I 基礎知識 學習筆記(2)

參考:Java核心技術 卷I 基礎知識 Unicode和char型別 碼點是指與一個編碼表中的某個字元對應的程式碼值。在Unicode標準中,碼點採用十六進位制書寫,並加上字首U+。 Unicode的碼點可以分成17個程式碼級別(code plane)。第一個程式碼級別成為

Java核心技術 卷I 基礎知識 學習筆記(1)

參考  Java核心技術 卷I 基礎知識 Java: 簡單性、面向物件、分散式、健壯性、安全性、體系結構中立、可移植性、解釋型、高效能、多執行緒、動態性。 分散式 Java有一個豐富的例程庫,用於處理像HTTP和FTP之類的TCP/IP協議。Java

Java核心技術 卷I 基礎知識 學習筆記(9)

參考:Java核心技術 卷I 基礎知識 第十四章 多程序與多執行緒有哪些區別呢?本質的區別在於每個程序擁有自己的一整套變數,而執行緒則共享資料。似乎有些風險,但是共享變數使執行緒之間的通訊比程序之間的通訊更有效、更容易。在有些作業系統中,與程序相比,執行緒更輕量級,建立、撤銷一個執

Java核心技術 卷I 基礎知識 學習筆記(8)

參考:Java核心技術 卷I 基礎知識 第八章 泛型程式設計意味著編寫的程式碼可以被很多不同型別的物件所重用。 泛型使用型別引數,使得程式碼有更好的可讀性。 在Java SE7及以後的版本中,建構函式中可以省略泛型型別,省略的型別可以從變數的型別推斷得出。 型別引數的魅

C++基礎知識部分筆記

一、第一個程式 1、c++標頭檔案的新標準:  #include<iostream>   (舊c++風格可以寫成  #include<iostream.h> 、  #include<cstdio>、 

Linux-C基礎知識學習:C語言作業-輸入m、n,並把m~n之間的不能被3整除的數輸出

Linux基礎知識學習 C語言作業:輸入m、n,並把m~n之間的不能被3整除的數輸出 //輸入m、n,並把m~n之間的不能被3整除的數輸出 #include <stdio.h> ma

一、HTML+CSS基礎知識學習筆記

注:如果早點了解那率性的你或者晚一點遇見成熟的我。學計算機的應該早點確定自己的技術方向,一定要有一個擅長的能夠用來吃飯的,其他的能掌握多少就是多少,像我這樣的什麼都學,什麼都不知道沒什麼卵用的。 1.HTML:Hyper Text Markup Language(超文字

Java基礎知識學習筆記總結

Java學習筆記總結java基礎複習1、 抽象類可以有構造器,可以有一個非抽象的父類2、 垃圾回收機制回收的是堆裡面的記憶體,棧裡面的資料自動入棧自動出棧3、 引用型別的資料在堆當中,記憶體中操作的只有

oracle資料庫基礎知識學習筆記

一、SQL語言分類: 1.DDL(資料定義語言):  create(建立)    alter(修改)  drop(刪除)------------主要是對錶操作。 2.DML(資料操作語言):  insert(插入)    delete(刪除)  update(更新)  

【追夢小樂的部落格】android工作開發經驗集_android基礎知識學習筆記集_反編譯教程收集

讀《瘋狂Android講義 第三版》筆記 本欄目會收集閱讀《瘋狂Android講義 》 的一些筆記,俗話說:好記性不如爛筆頭!更何況是我這種剛進入android程式設計界的初級小白,我要不斷堅持寫筆記,向中高階進軍