2013-10-19 43 views
0

作爲Visual Basic中的新程序員,我今天遇到了Enviroment.NewLine函數。我在Vb.net寫了一個控制檯應用程序,我想知道Enviroment.NewLineConsole.WriteLine()之間有什麼不同。Console.WriteLine()與Enviroment.NewLine

從視覺上來說,我能看到的唯一一件事情就是在控制檯窗口中生成一個新行。只是Enviroment.NewLine似乎是在代碼中更清潔的方法?

這裏是Enviroment.NewLine一些示例代碼:

'Welcome message 
Console.WriteLine("Welcome to this program.. " & Environment.NewLine) 
'Ask to enter first number 
Console.WriteLine("Please enter your first number: ") 

這裏是Console.WriteLine()一些示例代碼:

'Welcome message 
Console.WriteLine("Welcome to this program.. ") 
Console.WriteLine() 
'Ask to enter first number 
Console.WriteLine("Please enter your first number: ") 

兩個做同樣的事情,據我可以告訴。

在此先感謝。

回答

1

Environment.NewLine是一個屬性,返回String,這不是一種方法。而且你可以比較Console.WriteLine。該方法在控制檯上打印給定的字符串並添加當前行結束符。這是比較蘋果和橙子。

如果我想打印一個字符串到控制檯,並打算在下一行添加其他字符串,我使用Console.WriteLine。該方法是自我解釋。 如果我想創建一個包含行結束符的字符串,我concat Environment.NewLine

最重要的是可讀性。

+0

那麼,如果你只是想留下一條空白線,哪個最好? – Tahmid

+0

或者在上面的代碼中,您會使用哪個? – Tahmid

+0

你沒有閱讀答案? Environment.Newline什麼都不輸出,它只是一個常量。它怎麼會產生一個空行?這有點像問你是否應該使用webclient下載某個東西或整數。 – igrimpe

0

Console.WriteLine是Console類的一個方法,它將傳遞給控制檯的參數寫入並在輸出結尾添加一個Environment.Newline參數。 (雖然Console.Write不附加該常量)

Enviroment.NewLine是代表當前環境換行符的constant property

因此,您使用Console.Writeline將您的文本輸出到控制檯並自動添加換行符和回車符。如果將Enviroment.NewLine附加到控制檯方法,則最終會在輸出控制檯中顯示兩條換行符。

Environment.NewLine常量對於其他目的很有用,例如,當您需要在文本文件的輸出中附加一個換行常量時(儘管StreamWriter有自己的方法來編寫帶有換行符終止符的行,控制檯)

+0

如果你只是想留下一個空白行,這將是最好的? – Tahmid

+1

如果你想在第一行輸出後打印一個空行,我寧願兩次調用'Console.WriteLine'方法。它對你的意圖更明確,不需要字符串連接。但它確實是一個很小的差別。 – Steve

1

我沒有擡頭爲Console.WriteLine()的代碼,但我想它看起來像:

public Shared Sub WriteLine(Format as String, Args) 
    Write(Format, Args) 
    Write(Environment.NewLine) 
End Sub 

Environment.NewLine不是一個函數,它是一個只讀屬性。它的主要目的是成爲平臺獨立。