Tôi đã tìm kiếm biểu diễn bên trong của Java cho String, nhưng tôi có hai tài liệu trông đáng tin cậy nhưng không nhất quán.represention nội bộ của Java cho String là gì? Đã sửa đổi UTF-8? UTF-16?
Một là:
http://www.codeguru.com/cpp/misc/misc/multi-lingualsupport/article.php/c10451
và nó nói:
Java sử dụng UTF-16 cho các đại diện văn bản nội bộ và hỗ trợ sửa đổi phi tiêu chuẩn của UTF- 8 cho chuỗi serialization.
khác là:
và nó nói:
Tcl cũng sử dụng cùng một biến đổi UTF-8 [25] như Java cho trình bày nội dữ liệu Unicode, nhưng sử dụng CESU-8 nghiêm ngặt cho dữ liệu ngoài.
Đã sửa đổi UTF-8? Hoặc UTF-16? Cái nào đúng? Và Java sử dụng bao nhiêu byte cho một char trong bộ nhớ?
Vui lòng cho tôi biết cái nào là chính xác và số byte sử dụng.
http://stackoverflow.com/questions/4655250/difference-between-utf-8-and-utf-16, điều này có thể trả lời câu hỏi của bạn. –
Những gì Java sử dụng và những gì JVM sử dụng trong bộ nhớ không phải giống nhau. Xem câu trả lời của tôi. –
nguồn chính của bạn (chính thức) thông tin về Java nên được http://java.sun.com! (_despite của stackoverflow_) –