1. 程式人生 > >.NET基礎知識(九)

.NET基礎知識(九)

clear .net基礎 continue 連接數 public 全局 return語句 實現 tar

1、打印出由*號組成的倒三角形的圖案
******* 4*2-1 要求: 1、輸入倒三角的行數,行數範圍3-18,對於不在範圍的行數,拋出提示.
***** 3*2-1 2、在控制臺打印出指定行數的倒三角形。
***2
*1
答:while (true)
{
Console.Write("請輸入一個數(3-50)之間:");
int num = Convert.ToInt32(Console.ReadLine());
if (num < 3 || num > 50)
{
Console.WriteLine("非法數值");
continue;
}

StringBuilder sb = new StringBuilder();
for (int i = 0; i < num; i++)
{
sb.Clear();
//生成空格,規則:行首空格數=行數-1
string space = "".PadLeft(i, ‘ ‘);
sb.Append(space);
//生成星號, 規則:行號*2-1,行號=num-i
string star = "".PadLeft((num - i) * 2 - 1, ‘*‘);
sb.Append(star);
Console.WriteLine(sb);
}
}

2、什麽是單例?編寫一個單例類。
答:單例是一種設計模式。
這一模式的目的是使得類的一個對象成為系統中的唯一實例。
單例模式的要點有三個;一是某個類只能有一個實例;二是它必須自行創建這個實例;三是它必須自行向整個系統提供這個實例。
/// <summary>
/// 單例模式的實現
/// </summary>
public class Singleton
{
// 定義一個靜態變量來保存類的實例
private static Singleton uniqueInstance;

// 定義私有構造函數,使外界不能創建該類實例
private Singleton()
{
}

/// <summary>
/// 定義公有方法提供一個全局訪問點,同時你也可以定義公有屬性來提供全局訪問點
/// </summary>
/// <returns></returns>
public static Singleton GetInstance()
{
// 如果類的實例不存在則創建,否則直接返回
if (uniqueInstance == null)
{
uniqueInstance = new Singleton();
}
return uniqueInstance;
}
}

3、try{}裏有一個return語句,那麽緊跟在try後的finally{}裏的代碼會不會被執行,什麽時候被執行。
答:會執行,如果return後面有一個返回值或者表達式,則會先進行計算,把值暫存起來,然後再執行finally裏的代碼,無論如何,return總是最後執行。

4、不用中間變量,交換兩個整型變量。
答:i = 10, j = 20;
i = i + j;//i = 30;
j = i - j;//j = 10;
i = i - j;//i = 20;


5、對數據的並發采用什麽方法比較好?
答:可以控制連接池的連接數量,越多越好,還可以使用負載均衡。

.NET基礎知識(九)