Inteiros sem sinais no Kotlin


No último post eu falei sobre os tipos de dados numéricos mais utilizados.
Hoje vamos falar de outros tipos de dados numéricos,
que não são tão utilizados pela maioria dos desenvolvedores.

Hoje vou dos números inteiros sem sinal, mas o que isso quer dizer? São tipos de dados que só aceitam números positivos, onde o valor inicial começa em 0 e vai até a capacidade máxima permitida para o tipo em questão.

O Kotlin fornece os seguintes tipos de dados para valores inteiros sem sinal:

Tipo Tamanho (bits) Valor Mínimo Valor Máximo
UByte 8 0 255
UShort 16 0 65535
UInt 32 0 4,294,967,295 (232 – 1)
ULong 64 0 18,446,744,073,709,551,615 (264 – 1)

Números inteiros sem sinal devem ser declarados de forma específica como abaixo:

val b: UByte = 1u
val s: UShort = 1u
val l: ULong = 1u
val x: UInt = 55u
Enter fullscreen mode

Exit fullscreen mode

Repare que todos os números são finalizados com a letra u, pode a ser tanto maiúscula ou minúscula. Você pode inicializar uma variável sem especificar o tipo dela, mas nesse caso o Kotlin vai inferir o tipo UInt ou ULong à depender do tamanho do valor.

val b = 1U // Nesse caso será inferido o UInt como tipo
val k = 4294967298U // Como ultrapassa o tamanho reservado ao UInt é inferido o ULong como tipo.
Enter fullscreen mode

Exit fullscreen mode

Caso você queira verificar o tipo da variável você pode rodar o código abaixo:

No Exemplo acima você pode ser perguntar o motivo de estar usando Java juntamente com Kotlin, isso é possível por Kotlin tem uma interoperabilidade com Java, onde é possível utilizar código Java com Kotlin e vice-versa.

Com Kotlin é possível você definir o tipo da variável através da inferência de tipos, especificando que a mesma será do tipo Long, adicionando um L ao final:

Um cuidado muito importante ao se trabalhar com números inteiros sem sinal é que não podemos adicionar um valor negativo, pois isso gerará um erro.

Então se você não tiver certeza de que irá trabalhar apenas com números positivos, escolha outro tipo de dados, assim não acontecerá um erro na sua aplicação. Por hoje vou ficando por aqui, até a próxima.



Source link
lol

By stp2y

Leave a Reply

Your email address will not be published. Required fields are marked *

No widgets found. Go to Widget page and add the widget in Offcanvas Sidebar Widget Area.