2010-10-24 10 views
33

Tôi đã mã sau:In trong dòng sản phẩm mới, java

System.out.println(" | 1 2 3 4 5 6 7 8 9"); 
    System.out.println("----------------------------"); 
    System.out.println(""); 

tôi sử dụng println để tạo ra một dòng mới. Có thể thực hiện tương tự bằng \ n hoặc \ r không? Tôi đã cố gắng thêm \ n vào bản in thứ hai và tiếp tục in bằng phương thức in nhưng \ n không tạo dòng mới.

bất kỳ ý tưởng nào?

+9

Gọi 'System.out.println();' liên tục: P – BoltClock

+1

Tôi tự hỏi tại sao bạn có vấn đề chỉ cần viết 'System.out.println (" \ n) ";' "\ n" xem như chuỗi thoát cho C/C++/C# và Java. – Reborn

Trả lời

61
String newLine = System.getProperty("line.separator");//This will retrieve line separator dependent on OS. 

    System.out.println("line 1" + newLine + "line2"); 
+17

Vì Java 7 bạn có 'System.lineSeparator()' http://docs.oracle.com/javase/7/docs/api/java/lang/System.html#lineSeparator%28%29 –

+1

là 'System.out .println(); 'nhìn xuống? Điều này không làm điều tương tự? Đây là ngày thứ hai của tôi trong Java, đã tìm ra các phương pháp hay nhất. – Dan

+0

nó ngoại trừ việc nó thêm dấu tách dòng ở cuối –

8

Nó tạo ra một dòng mới. Hãy thử:

System.out.println("---\n###"); 
+0

Trong quá khứ, các dòng yêu cầu của Apple Mac được phân tách bằng '\ r', Vì vậy, tốt hơn là viết mã độc lập của hệ thống, kiểm tra giải pháp của tôi –

+0

Anh ấy đang nói về "dòng mới".Nếu anh ta yêu cầu "dòng mới + trở về vận chuyển", tôi đã chỉ cho anh ta \ r \ n :) Nếu chúng ta sẽ cầu kỳ, thì tôi khuyên bạn nên sử dụng StringBuilder thay vì nối chuỗi. – biasedbit

+2

Đối với dòng "" 1 "+ newLine +" line2 "' bằng cách sử dụng một StringBuilder rõ ràng sẽ phản tác dụng. Trình biên dịch có thể tối ưu hóa điều này một mình. – Thilo

6

Bạn có thể thử thêm \ r \ n thay vì chỉ \ n. Tùy thuộc vào hệ điều hành của bạn và cách bạn đang xem đầu ra, nó có thể quan trọng.

8

bắn tốt nhất của bạn sẽ là với

String.format("%n") 

hoặc

System.out.printf("%n"); 

Đây là vụ phải in một ký tự xuống dòng, tùy thuộc vào nền tảng hiện nay, do đó, nó hoàn hảo cho giao diện điều khiển.

Nếu bạn đang in một tệp thì phụ thuộc.

4

\n tạo một dòng mới bằng Java. Không sử dụng dấu cách trước hoặc sau \n.

Ví dụ: in It creates\na new line đầu ra

Nó tạo ra
một dòng mới.

+1

nơi nó nói rằng sử dụng \ n trong java sẽ sử dụng dòng mới chính xác, chẳng hạn như \ r \ n trên Windows? – simpleuser

1

Vì bạn đang sử dụng Windows, thay vì \ n sử dụng \ r \ n (vận chuyển trở lại + nguồn cấp dữ liệu dòng).

6

Bạn nên sử dụng bộ tách dòng được tích hợp sẵn. Ưu điểm là bạn không phải lo lắng về những gì hệ thống bạn đang chạy, nó sẽ hoạt động.

Kể từ Java 1,7

System.lineSeparator() 

Pre Java 1,7

System.getProperty("line.separator") 
-1

"\ n" đây là phương pháp đơn giản để tách các chuỗi liên tục

+0

Không cần phải viết "** !!!! **". – t3chb0t

11
System.out.println("hello"+"\n"+"world"); 
-1
//Case1: 
System.out.println(" 1 2 3 4 5 6 7 8 9" + "\n" + "----------------------------"); 

//Case2: 
System.out.printf(" 1 2 3 4 5 6 7 8 9" + "\n" + "----------------------------"); 

//Case3: 
System.out.print(" 1 2 3 4 5 6 7 8 9" + "\n" + "----------------------------"); 
0
System.out.print(values[i] + " "); 
//in one number be printed 
+0

số sẽ được in trong một dòng như 1 2 3 4 5 cho dòng mới, chúng tôi có thể sử dụng \ n –