Котлин варијабле и основни типови

У овом упутству ћете научити о променљивим, како их креирати и основним типовима података које Котлин подржава за стварање променљивих.

Као што знате, променљива је место у меморији (област за складиштење) за чување података.

Да би се назначило подручје складиштења, свакој променљивој треба дати јединствено име (идентификатор). Сазнајте више о Како именовати променљиву у Котлину?

Како прогласити променљиву у Котлину?

За декларисање променљиве у Котлину користи се или varили valкључна реч. Ево примера:

 вар језик = "француски" вал оцена = 95

О разлици у коришћењу вар и вал говори се касније у чланку. За сада се фокусирајмо на декларацију променљивих.

Овде је језик променљива типа Stringи scoreпроменљива је типа Int. Не морате да наведете тип променљивих; Котлин то имплицитно ради за вас. Преводник то зна по изразу иницијализатора („француски“ је а String, а 95 целобројна вредност у горњем програму). То се у програмирању назива закључивањем типа.

Међутим, можете изричито навести тип ако желите:

 вар језик: Стринг = "француски" вал оцена: Инт = 95

Иницијализовали смо променљиву током декларације у горњим примерима. Међутим, није потребно. Можете прогласити променљиву и одредити њен тип у једном изразу, а променљиву променити у другом изразу касније у програму.

 вар језик: Стринг // декларација променљиве типа Стринг … лангуаге = "француски" // иницијализација променљиве вал сцоре: Инт // декларација променљиве типа Инт … сцоре = 95 // иницијализација променљиве 

Ево неколико примера који доводе до грешке.

 вар језик // Грешка језик = "француски"

Овде врста језичке променљиве није експлицитно наведена, нити је променљива иницијализована током декларације.

 вар језик: Језик низа = 14 // Грешка

Овде покушавамо да доделимо 14 (целобројна вредност) променљивој различитог типа ( String).

Разлика између вар и вал

  • вал (Непроменљива референца) - Променљива декларисана коришћењем valкључне речи не може се променити након додељивања вредности. Слично је завршној променљивој у Јави.
  • вар (Променљива референца) - Променљива декларисана помоћу varкључне речи може се касније променити у програму. Одговара регуларној Јава променљивој.

Ево неколико примера:

 вар језик = "француски" језик = "немачки" 

Овде је languageпроменљива додељена немачком. Пошто је променљива декларисана коришћењем var, овај код савршено функционише.

 вал језик = "француски" језик = "немачки" // Грешка

У Germanгорњем примеру не можете поново доделити језичку променљиву јер је променљива декларисана коришћењем val.

Сада знате шта су Котлин променљиве, време је да научите различите вредности које Котлин променљива може узети.

Котлин Басиц Типес

Котлин је статички откуцан језик попут Јаве. Односно, тип променљиве је познат током времена компајлирања. На пример,

 вал језик: Инт вал ознаке = 12.3

Овде преводилац зна да је језик типа Int, а ознаке типа Doubleпре времена компајлирања.

Уграђени типови у Котлину могу се категорисати као:

  • Бројеви
  • Карактери
  • Боолеанс
  • Низови

Тип броја

Бројеви у Котлину слични су Јави. Постоји 6 уграђених типова који представљају бројеве.

  • Бајт
  • Кратак
  • Инт
  • Дуго
  • Пловак
  • Доубле

1. Бајт

  • ByteТип података може имати вредности од -128 до 127 (8-битни комплемент двојке цео број).
  • Користи се уместо Intили других целобројних типова података за уштеду меморије ако је сигурно да ће вредност променљиве бити унутар (-128, 127)
  • Пример:
     fun main(args : Array) ( val range: Byte = 112 println("$range") // The code below gives error. Why? // val range1: Byte = 200 )

Када покренете програм, излаз ће бити:

 112

2. Кратко

  • ShortТип података може имати вредности од -32768 до 32767 (16-битни комплемент двојке цео број).
  • Користи се уместо осталих целобројних типова података за уштеду меморије ако је сигурно да ће вредност променљиве бити унутар (-32768, 32767).
  • Пример:
 fun main(args : Array) ( val temperature: Short = -11245 println("$temperature") )

Када покренете програм, излаз ће бити:

 -11245

3. Инт

  • IntТип података може имати вредности од до (32-битни комплемент двојке цео број).-231231-1
  • Пример:
 fun main(args : Array) ( val score: Int = 100000 println("$score") )

Када покренете програм, излаз ће бити:

 100000

Ако променљивој доделите цео број између, а да није изричито наведен њен тип, променљива ће бити типа. На пример,-231231-1Int

 fun main(args : Array) ( // score is of type Int val score = 10 println("$score") ) 

If you are using IntelliJ IDEA, you can place cursor inside the variable and press Ctrl + Shift + P to see its type.

4. Long

  • The Long data type can have values from -263 to 263-1 (64-bit signed two's complement integer).
  • Example:
 fun main(args : Array) ( val highestScore: Long = 9999 println("$highestScore") )

When you run the program, the output will be:

 9999

If you assign an integer value greater than 231-1 or less than -231 to a variable (without explicitly specifying its type), the variable will be of Long type. For example,

 val distance = 10000000000 // distance variable of type Long 

Similarly, you can use capital letter L to specify that the variable is of type Long. For example,

 val distance = 100L // distance value of type Long

5. Double

  • The Double type is a double-precision 64-bit floating point.
  • Example:
 fun main(args : Array) ( // distance is of type Double val distance = 999.5 println("$distance") ) 

When you run the program, the output will be:

 999.5

Float

  • The Float data type is a single-precision 32-bit floating point. Learn more about single precision and double precision floating point if you are interested.
  • Example:
 fun main(args : Array) ( // distance is of type Float val distance = 19.5F println("$distance") ) 

When you run the program, the output will be:

 19.5

Notice that, we have used 19.5F instead of 19.5 in the above program. It is because 19.5 is a Double literal, and you cannot assign Double value to a variable of type Float.

To tell compiler to treat 19.5 as Float, you need to use F at the end.

If you are not sure what number value a variable will be assigned in the program, you can specify it as Number type. This allows you to assign both integer and floating-point value to the variable (one at a time). For example:

 fun main(args : Array) ( var test: Number = 12.2 println("$test") test = 12 // Int smart cast from Number println("$test") test = 120L // Long smart cast from Number println("$test") ) 

When you run the program, the output will be:

 12.2 12 120

To learn more, visit: Kotlin smart casts

Char

To represent a character in Kotlin, Char types are used.

Unlike Java, Char types cannot be treated as numbers. Visit this page to learn more about Java char Type.

 fun main(args : Array) ( val letter: Char letter = 'k' println("$letter") ) 

When you run the program, the output will be:

 k 

In Java, you can do something like:

 char letter = 65;

However, the following code gives error in Kotlin.

 var letter: Char = 65 // Error

Boolean

  • The Boolean data type has two possible values, either true or false.
  • Example:
 fun main(args : Array) ( val flag = true println("$flag") )

Booleans are used in decision making statements (will be discussed in later chapter).

Kotlin Arrays

Низ је контејнер који садржи податке (вредности) једног појединачног типа. На пример, можете створити низ који може садржати 100 вредности Intтипа.

У Котлину су низови представљени Arrayкласом. Класа има getи setфункције, sizeсвојство и неколико других корисних функција чланова.

Да бисте детаљно сазнали о низовима, посетите: Котлин Арраис

Котлинске жице

У Котлину жице представљају Stringкласа. Знаковни низ као што је „ово је низ“ имплементиран је као инстанца ове класе.

Да бисте детаљно сазнали о жицама, вист: Котлин Стрингс

Препоручена читања

  • Конверзија типова у Котлину
  • Паметне улоге у Котлину
  • Котлин занириви типови

Занимљиви Чланци...