Hỏi đáp

Chia sẻ kiến thức, cùng nhau phát triển

Sự khác nhau giữa string a = null và string a; Giá trị của a trong 2 trường hợp khác nhau cụ thể ra sao

Đã tạo 06:44 06-04-2017 Hoạt động 11:40 01-05-2017 546 lượt xem 4 bình luận

Sự khác nhau giữa string a = null và string a; Giá trị của a trong 2 trường hợp khác nhau cụ thể ra sao.

Theo mình thì a = null là giá trị của nó là null.

Còn a chưa khởi tạo thì khó không chứa giá trị nào cả. Hay vùng nhớ của nó không có??

Liệu có đúng không.

Mong mọi người giúp đỡ

Bình luận

Để bình luận, bạn cần đăng nhập bằng tài khoản Howkteam.

Đăng nhập
Darky đã bình luận 11:40 01-05-2017

Cần phải phân biệt được giá trị mặc định gán cho biến và biến NULL . 

Mình nghĩ để string a = null hoặc a = null mà trong một trường hợp nào đó bạn cần lấy độ dài của chuỗi sẽ bị lỗi 

pqthang97 đã bình luận 23:16 06-04-2017

Khi khai báo string a = null; thì khi đó a sẽ được gán null hay chính xác là được gán kí tự "\0".

Còn khi khai báo string a; thì khi đó a sẽ được coi là empty, nghĩa là độ dài của string a là 0. Còn null thì khác 0.

Cả 2 trường hợp đều được cấp phát bộ nhớ, chỉ có điều bộ nhớ của Empty là rỗng thật sự, còn của null thì ko phải rỗng.

Khai báo string a; sẽ giảm khả năng dính lỗi NullReferenceException hơn là string a = null;

 

Lê Tấn Lộc đã bình luận 07:18 06-04-2017

Bạn thử thao tác vs 2 biến đó thử, mình nghĩ string a=null; bạn sẽ không thao tác/hành đông với nó được, còn string a; a=null; thì bạn có thể thao tác được. Thân!

Câu hỏi mới nhất