არის EqualsIgnoreCase null უსაფრთხო?
არის EqualsIgnoreCase null უსაფრთხო?

ვიდეო: არის EqualsIgnoreCase null უსაფრთხო?

ვიდეო: არის EqualsIgnoreCase null უსაფრთხო?
ვიდეო: Java. Проблема с null. Null safety. 2024, მაისი
Anonim

უდრის IgnoreCase ( null ); აუცილებლად გამოიწვევს NullPointerException-ს. ასე რომ, ტოლების მეთოდები არ არის შემუშავებული იმის შესამოწმებლად, არის თუ არა ობიექტი null , მხოლოდ იმიტომ, რომ თქვენ არ შეგიძლიათ მათი გამოძახება null . არასოდეს მქონია პრობლემები ამ გზით გაკეთებისას, გარდა ამისა, ეს უფრო უსაფრთხო გზაა ჩეკი პოტენციალის თავიდან აცილებისას null წერტილოვანი გამონაკლისები.

შესაბამისად, არის StringUtils უდრის null უსაფრთხო?

Compare() მეთოდი in StringUtils კლასი არის ა null - უსაფრთხო String კლასისა და სახელურების compareTo() მეთოდის ვერსია null ფასეულობების გათვალისწინებით ა null ღირებულება ნაკლებია, ვიდრე არა null ღირებულება. ორი null განიხილება ღირებულებები თანაბარი.

მეორეც, შეიძლება თუ არა სტრიქონი იყოს null? ცარიელი სიმებიანი არის სიმებიანი ნულოვანი სიგრძის მაგალითი, ხოლო a null სტრიქონი საერთოდ არ აქვს ღირებულება. ცარიელი სიმებიანი წარმოდგენილია როგორც "". ეს არის ნულოვანი სიმბოლოების სიმბოლოების თანმიმდევრობა. ა null სტრიქონი წარმოდგენილია null.

უფრო მეტიც, ჯავა უდრის null უსაფრთხო?

უდრის (str1, str2); Ეს არის null უსაფრთხო . მას იშვიათად უწევს უფრო ძვირი სტრიქონის გამოყენება. უდრის () მეთოდი, რადგან ანდროიდზე იდენტური სტრიქონები თითქმის ყოველთვის ადარებენ true-ს "==" ოპერანდს Android-ის სიმებიანი გაერთიანების წყალობით, ხოლო სიგრძის შემოწმება სწრაფი გზაა შეუსაბამობების უმეტესობის გასაფილტრად.

შეგვიძლია შევადაროთ Null ჯავაში null-ს?

In ჯავა მხოლოდ მითითებები შეუძლია აქვს ღირებულება null . თუ ორივე მითითებაა null მაშინ ორივეს ერთი და იგივე მნიშვნელობა აქვს. აქედან გამომდინარე null == null ჭეშმარიტი ყოფნა. კიდევ ერთი მიზეზი null == null აბრუნებს true არის ის, რომ არ არსებობს ოპერატორი, რომელიც შეამოწმებს არის თუ არა მითითება null ; არ არსებობს "is" ოპერატორი (მაგ., თუ (myRef არის null ) {}).

გირჩევთ: