c#基於這些,你已經看到了?(一)-----誰才剛剛開始學習使用

來源:互聯網
上載者:User

標籤:

1、注視(不要寫的目光是流氓,從廢話名盲人)
‘///’一般用於目光功能。凝視類。
2、熱鍵
ctrl+k+d(有語法錯誤無法進行對齊)
ctrl+j(高速彈出僅僅能提示)
shift+end,shift+home 鍵從行首到行尾,從行尾到行首。
ctrl+k+c 凝視  ctrl+k+u取消凝視
alt+shift+f10 開啟說明引用空間。
f1轉到msdn
f12轉到定義

3、資料類型
decimal money=5000m。(金錢類型)
String 和string在c#中都一樣。String是.net平台中共用類型。string是c#中專有的。它們兩個都會映射到System.class類中。
4、命名規範
*1、Camel命名規範(多用於變數命名):首單詞首字母小寫,其餘單字首大寫。
*2、Pascal命名規範(多用於類或者方法命名):全部單字首大寫。


5、預留位置
用法:先挖個坑。再填個坑。


Console.WriteLine("..{0},...{1},...{2}",n1,n2,n3);
6、轉義符
\n:換行,可是在windows系統中不認識\n,僅僅認識\r\n。
\":輸出半形引號
\t:tab鍵(排版)
\b:退格。首尾放置無效。僅僅是退格一個。
@:1、取消\在字串中的轉義作用。

2、保留原格式輸出。


7、枚舉
=====枚舉與int和string之間轉換===
@1、枚舉類型預設能夠和int類型相互轉換  枚舉類型跟int是相容的
@2、枚舉類型轉換成string,用toString()。
  枚舉類型  對象名 =(枚舉類型)Enum.Parse(typeof(枚舉名),string s);
8、屬性
慣使用方法:屬性開頭字母大寫。欄位開頭字母小寫。


class  Person
{
private  int age;

public int Age
{
set
{
 this.age=value;
}
get
{
  return this.age;
}


}
9、c#中無全域變數一說,僅僅能用靜態欄位來類比全域變數。


10、c#中三大參數
1)out參數:
假設在一個方法中返回多個同樣類型的值的時候,能夠考慮返回一個數組。


可是返回多個不同類型的值時就需用out。

out既能夠返回多個同樣值也能夠返回多個不同值。
事實上out作用就是:返回被調用函數的多個值。與一般返回方向是相反的。
注意:out定義變數必須在被調用函數中賦值。
2)ref參數:
可以將一個變數帶入一個方法中改變。改變完畢後。再將改變後的值帶出方法。


main()
{
int s=10。
Test(ref s)。


}
Test(ref s1)
{
s1+=3
}
3)parame參數:
可變參數
將實參列表中與可變參數數組中類型一致的類型當作數組的元素。既實參能夠不用聲明數組。


main
{
test(“為”。34,389。34);
}
test(string name。params int[] score)
{
}
11、方法的重載和返回值無關。至於方法名、參數類型、個數有關。
12、靜態與非靜態差別
1)、在非靜態類中。既能夠有執行個體成員,也能夠靜態方法。

靜態類中僅僅能出現靜態成員。
2)、在調用執行個體成員時候。須要使用對象名.執行個體成員;
在調用靜態成員的時候,須要類名.靜態方法。


總結:靜態成員必須使用類名去調用,執行個體成員用對象去調用。
 靜態函數中僅僅能訪問靜態成員,不同意訪問執行個體成員。
 執行個體方法既能夠使用靜態成員。也能夠使用執行個體成員。
 靜態類中僅僅能出現靜態成員。靜態類無法執行個體化。
使用:
1)、假設你想要你的類當做一個“工具類”去使用,這個時候能夠考慮寫成靜態類
2)、靜態類在整個項目資源共用。

靜態類是占記憶體的。
GC   Garbage Collection 記憶體回收行程。
13、建構函式
作用:協助我們初始化對象,建構函式是一個特殊的方法。
1)建構函式沒有返回值。連void也沒有
2)建構函式的名稱必須和類名一樣。
14、new
1)在記憶體中開闢一塊空間;
2)再開闢的空間中建立對象;
3)調用對象的建構函式初始化對象。


建構函式必須是public。


15、this
1)代表當前類的對象。


2)在類其中顯式調用本類的建構函式   :this
16、在一個項目中引用還有一個項目的類
1)、先引用項目
2)、引用還有一個項目的命名空間。
17、值類型和參考型別
差別:
1、值類型和參考型別在記憶體上儲存的地方不一樣
2、在傳遞值類型和傳遞參考型別的時候傳遞的方式不一樣。
值類型我們稱之值傳遞,參考型別我們稱之為引用傳遞。


值類型:int 、double、char、bool、decimal、struct、enum
參考型別:string、自己定義類
儲存:
值類型儲存在記憶體的棧中。
參考型別儲存在記憶體的堆中。
18、字串
1)、字串的不可變性,假設字串被又一次賦值,老值並不刪除,而是在棧中將老的
地址刪除。又一次給字串賦予新的地址值。


當程式結束後,GC掃描整個記憶體。假設發現有的空間沒有指向,則馬上銷毀。
2)、能夠將string類型看作是char類型的僅僅讀數組。


例:
string s="abcde";
//S[0]=‘B‘;不能這麼做。由於是僅僅讀的
//假設改變的話,首先需進行對string的轉換。


char []chs=s.ToCharArray();
//將字元數群組轉換成我們的字串
s=new string(chs);
Console.WriteLine(s[0]);
19、StringBuilder
當字串進行大量的迴圈累加時,會進行大量的開闢新的記憶體空間。比較慢。
計時:Stopwatch  Start();  Stop();  Stopwatch.Elapsed //記錄執行的總時間。
StringBuilder.Append(i);追加方式進行累加。


StringBuilder會節省非常大時間。原因在於它不開闢新空間。然後再將StringBuilder轉換為String
20、字串方法
1)、Length()
2)、ToUpper()
3)、ToLower()
4)Equals(str1。StringComparision.OrdinalIgnoreCase):比較兩個字串是否一致
,並忽略大寫和小寫。
5)、Splite(字元數組。StringSplitOptions.RemoveEmptyEntries),則將字元數組內容刪除,而且不返回空數組和null。
6)、Contains()
7)、Replace(str1,str2)
8)、string.Substring();
9)、string.StartWith()/EndWith()
10)、string.indexof()返回int類型,返回字串首先出現的位置
11)、string.LastIndexof()最後一個字串出現的位置。


12)、string.trim()移除字串中全部空格。string.trimStart()/trimEnd();
13)、string.IsNullOrEmpty()
14)、string.Join();它可以被添加到陣資料行分隔符號規定磨削。

著作權聲明:本文博主原創文章,部落格,未經同意不得轉載。

c#基於這些,你已經看到了?(一)-----誰才剛剛開始學習使用

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.