Kotlin dilinde bir harf seçeceğiz mesela harf=“a” şeklinde biz harf değişkenini nasıl “b” yapabiliriz yani bir sonraki harfi nasıl getirebiliriz
Sırayla mı seçecek yoksa karışık mı?
++harf
Karakterin ascii kodunu elde edip bir artırırsanız sonraki karaktere geçmiş olursunuz. Python temsili
karakter = "a"
ascii_kod = ord(karakter)
yeni_karakter = chr(ascii_kod + 1) # b
z
harfi icin kontrol eklemek gerekiyor:
get_next_char = lambda c: chr(ord(c)+1) if c != "z" and c!="Z" else "a" if c.islower() else "A"
Ic ice iki if fantastik oldu
Dilin sunduğunu kullanmak yerine ASCIIye mi gidip gelmeliyiz? bilemiyorum ++ zaten aşağı yukarı onu yapıyordur
Ben kotlin bilmem. Böyle bir özellik varsa kullanır tabi. Normalde ++
operatörü tüm dillerde yalnızca sayısal değerler için kullanılır. Kotlinde bunu string için yapmışlarsa bilemem, ama sanmıyorum. “ab”++ yaparsak o zaman “bc” mi oluyor? Belki de char için geçerlidir sadece. Çünkü char değişken de sayısal olarak ele alınabiliyor.
Evet tabi kontrol şartları eklenir, isteğe göre başa döner veya z’de sonlanır. Kullanacak kişiye kalmış
Tüm dillerde değil
The auto-increment operator has a little extra builtin magic to it. If you increment a variable that is numeric, or that has ever been used in a numeric context, you get a normal increment. If, however, the variable has been used in only string contexts since it was set, and has a value that is not the empty string and matches the pattern /^[a-zA-Z]*[0-9]*\z/
, the increment is done as a string, preserving each character within its range, with carry:
print ++($foo = "99"); # prints "100"
print ++($foo = "a0"); # prints "a1"
print ++($foo = "Az"); # prints "Ba"
print ++($foo = "zz"); # prints "aaa"
Güzelmiş. Ama demek istediğim ++
operatörünün genel olarak, değişkenin değerini bir artırmak olarak kabul edildiğiydi. String veya char ifadesini artırmak için ayrıca uygulaması olabilir.
Anladım, zaten normalde demişsiniz pardon ama zaten Perl pek normal sayılmaz o da ayrı bir. mesele