Có bất kỳ lý do cụ thể nào khiến loại này không được bao gồm trong khi các định dạng hex và bát phân được cho phép không?Tại sao không có chữ nhị phân trong Java?
Trả lời
Đây là tài liệu tham khảo "chính thức" gần đây và nhiều hơn nữa - http://openjdk.java.net/projects/coin/ –
Liên kết tuyệt vời +1. Nó dẫn tôi đến http://mail.openjdk.java.net/pipermail/coin-dev/2009-March/000929.html tổng hợp tất cả các lý do của tôi tại sao tôi muốn xem một chữ nhị phân. –
Có liên kết gần đây hơn: http://download.oracle.com/javase/7/docs/technotes/guides/language/binary-literals.html –
literals Binary đã được giới thiệu trong Java 7. Xem "Improved Integer Literals":
int i = 0b1001001;
Lý do không bao gồm chúng từ ngày đầu tiên rất có thể là như sau: Java là một ngôn ngữ cấp cao và đã được khá hạn chế khi nói đến các cấu trúc ngôn ngữ ít quan trọng và mức độ thấp. Các nhà phát triển Java đã có một chính sách chung về "nếu nghi ngờ, hãy giữ nó ra".
Nếu bạn đang ở trên Java 6 trở lên, lựa chọn tốt nhất của bạn là để làm
int yourInteger = Integer.parseInt("100100101", 2);
C là ngôn ngữ trung cấp và có lịch sử khá thuận lợi khi nói đến các cấu trúc ngôn ngữ rất thấp. Tuy nhiên, không có chữ số nhị phân. –
Vâng, đó là IMO xa lạ. Nó đã có mặt trong GCC khá lâu mặc dù tôi hiểu nó. – aioobe
Có bao nhiêu người tìm thấy các chữ số bát phân hữu ích hơn so với những gì họ tìm thấy nhị phân? – supercat
Các associated bug mở cửa kể từ tháng Tư năm 2004, có ưu tiên thấp và được coi là một yêu cầu tăng cường bởi Sun/Oracle .
Tôi đoán họ nghĩ literals nhị phân sẽ làm cho ngôn ngữ phức tạp hơn và không cung cấp lợi ích rõ ràng ...
trên thực tế, nó được. trong java7.
http://code.joejag.com/2009/new-language-features-in-java-7/
Dường như có một ấn tượng ở đây là thực hiện literals nhị phân là phức tạp. Nó không phải là. Sẽ mất khoảng năm phút. Cộng với các trường hợp kiểm tra tất nhiên.
Java 7 không cho phép các chữ cái nhị phân! Kiểm tra điều này: int binVal = 0b11010; tại liên kết này: http://docs.oracle.com/javase/tutorial/java/nutsandbolts/datatypes.html
- 1. Tại sao Createfile() không có cờ nhị phân
- 2. Java có phân biệt chữ hoa chữ thường không?
- 3. JAVA: cây nhị phân
- 4. Tại sao tìm kiếm nhị phân trên danh sách trong Java?
- 5. Tại sao không có chu kỳ trong cây nhị phân bất biến của Eric Lippert?
- 6. Java - Mã nhị phân có giống với ByteCode không?
- 7. Tại sao TortoiseHg nghĩ Resource.h là nhị phân?
- 8. Thuật toán "sắp xếp nhị phân" có tồn tại không?
- 9. Tại sao nhị phân Guids khác với đại diện thường
- 10. Java dài thành nhị phân
- 11. Tại sao không có byte hoặc các chữ ngắn trong Java?
- 12. Tại sao chữ '\ 117' hợp lệ trong Java?
- 13. Tạo số nhị phân của n chữ số trong clojure
- 14. Tại sao MATLAB không đọc thành công trong tệp nhị phân?
- 15. Làm cách nào để nhập nhị phân chữ trong VB.NET?
- 16. Tại sao SQL Server '=' so sánh không phân biệt chữ hoa chữ thường?
- 17. Tại sao PriorityQueue trong Java không thể có initialCapacity 0?
- 18. Java: Cách ghi tệp nhị phân?
- 19. nhị phân Java 7 cho Mac
- 20. tại sao LinkedList không có initialCapacity trong java?
- 21. Tại sao không có chú thích @Implements trong Java?
- 22. Tại sao không có ceil (float) trong Java?
- 23. Tại sao không có giao diện cuối cùng trong Java?
- 24. Tại sao phân tích cú pháp SimpleDateFormat không mong manh bằng các chữ cái trong?
- 25. Tại sao các tệp tiêu đề C không làm tăng kích thước của tệp nhị phân?
- 26. Tại sao Perl không biên dịch thành các tệp nhị phân như python
- 27. Phân tích dữ liệu nhị phân ASN.1 bằng Java
- 28. Tại sao Java bộ sưu tập API không có thực hiện cây
- 29. Tôi có thể đặt nhị phân trong stdin không? C#
- 30. Có tìm kiếm nhị phân tích hợp trong Ruby không?
Nó không được bao gồm trong hầu hết các ngôn ngữ, có thể cùng một lý do cho nó không được bao gồm trong Java. Nhưng tôi vẫn muốn biết lý do chung. –
Cảm ơn các bạn vì đã trả lời nhanh. Tóm lại, tôi sẽ nói nó không được bao gồm đơn giản bởi vì C không có nó và không thực sự bởi vì nó làm tăng thêm sự phức tạp. Heck, bát phân được bao gồm và tôi không thấy nhiều việc sử dụng nó so với nhị phân nhưng chỉ vì C có nó. Như chúng ta có thể thấy từ đề xuất này http://mail.openjdk.java.net/pipermail/coin-dev/2009-March/000929.html, các số nhị phân có rất nhiều lợi thế đặc biệt trong miền định hướng bit. –