2012-11-19 9 views
5

thể trùng lặp:
Is there an easy way to return a string repeated X number of times?Làm thế nào để in các nhân vật cùng nhiều lần với Console.WriteLine()

Nếu tôi muốn hiển thị một dấu chấm 10 lần trong Python, tôi có thể một trong hai sử dụng này:

hay này

print "." * 10 

Làm cách nào để sử dụng phương pháp thứ hai trong C#? Tôi đã thử các biến thể của:

Console.WriteLine("."*10); 

nhưng không ai trong số chúng hoạt động. Cảm ơn.

+0

Xin lỗi vì không đúng định dạng mã và nhờ tôi đã sửa chữa. –

+0

plz, xem tại đây. http://stackoverflow.com/questions/532892/can-i-multiply-a-string-in-c/532912#532912 – Oleg

+0

'" ".PadRight (10, '.')' :) –

Trả lời

9

Bạn có thể sử dụng string constructor:

Console.WriteLine(new string('.', 10)); 

Khởi một trường hợp mới của lớp String để giá trị chỉ ra bởi một ký tự Unicode định lặp đi lặp lại một số quy định của thời gian.

+0

Cảm ơn câu trả lời, nó đã hoạt động. Và chỉ là một câu hỏi chung chung. Tôi mới vào StackOverflow. Nếu tôi thấy rằng một số người đã đưa ra câu trả lời đúng và tất cả đều đúng và đầy đủ, thì tôi phải đánh dấu câu trả lời cụ thể nào là câu trả lời đúng nhất? –

+0

Đối với Python 3: in ('.' * 10) – torina

4

Tôi muốn nói câu trả lời thẳng nhất là sử dụng vòng lặp for. Điều này sử dụng ít dung lượng hơn.

for (int i = 0; i < 10; i++) 
    Console.Write('.'); 
Console.WriteLine(); 

Nhưng bạn cũng có thể phân bổ chuỗi chứa ký tự lặp lại. Điều này liên quan đến việc nhập ít hơn và gần như chắc chắn nhanh hơn.

Console.WriteLine(new String('.', 10)); 
0

thử một cái gì đó như thế này

string print = ""; 
for(int i = 0; i< 10 ; i++) 
{ 
print = print + "."; 
} 
Console.WriteLine(print); 
2

Bạn có thể sử dụng một trong những 'chuỗi' nhà thầu, như vậy:

Console.WriteLine(new string('.', 10));