Kotlin-基础语法练习一

Example:

kotlin 复制代码
fun main(args: Array<String>) {
    var a= 10 + 20
    println(a)
}

Output:

kotlin 复制代码
30

Arithmetic Operators-算术运算符:

Operators Meaning Expression Translate to
+ Addition a + b a.plus(b)
- Subtraction a - b a.minus(b)
* Multiplication a * b a.times(b)
/ Division a / b a.div(b)
% Modulus a % b a.rem(b)

Example:

kotlin 复制代码
fun main(args: Array<String>)
{
    var a = 20 
    var b = 4 
    println("a + b = " + (a + b))
    println("a - b = " + (a - b))
    println("a * b = " + (a.times(b)))
    println("a / b = " + (a / b))
    println("a % b = " + (a.rem(b)))
}

Output:

kotlin 复制代码
a + b = 24
a - b = 16
a * b = 80
a / b = 5
a % b = 0

Relational Operators-关系运算符

Operators Meaning Expression Translate to
> greater than a > b a.compareTo(b) > 0
< less than a < b a.compareTo(b) < 0
>= greater than or equal to a >= b a.compareTo(b) >= 0
<= less than or equal to a <= b a.compareTo(b) <= 0
== is equal to a == b a?.equals(b) ?: (b === null)
!= not equal to a != b !(a?.equals(b) ?: (b === null)) > 0

Example:

kotlin 复制代码
fun main(args: Array<String>)
{
    var c = 30
    var d = 40
    println("c > d = "+(c>d))
    println("c < d = "+(c.compareTo(d) < 0))
    println("c >= d = "+(c>=d))
    println("c <= d = "+(c.compareTo(d) <= 0))
    println("c == d = "+(c==d))
    println("c != d = "+(!(c?.equals(d) ?: (d === null))))
}

Output:

kotlin 复制代码
c > d = false
c < d = true
c >= d = false
c <= d = true
c == d = false
c != d = true

Assignment Operators-赋值运算符

Operators Expression Translate to
= a = 5 a.equalto(5)
+= a = a + b a.plusAssign(b) > 0
-= a = a - b a.minusAssign(b) < 0
*= a = a * b a.timesAssign(b)>= 0
/= a = a / b a.divAssign(b) <= 0
%= a = a % b a.remAssign(b)

Example:

kotlin 复制代码
fun main(args : Array<String>){
 var a = 10
    var b = 5
    a+=b
    println(a)
    a-=b
    println(a)
    a*=b
    println(a)
    a/=b
    println(a)
    a%=b
    println(a)

}

Output:

kotlin 复制代码
15
10
50
10
0

Unary Operators-单目运算符

Operators Expression Translate to
++ ++a or a++ a.inc()
-- --a or a-- a.dec()

Example:

kotlin 复制代码
fun main(args : Array<String>){
    var e=10
    var flag = true
    println("First print then increment: "+ e++)
    println("First increment then print: "+ ++e)
    println("First print then decrement: "+ e--)
    println("First decrement then print: "+ --e)
}

Output:

kotlin 复制代码
First print then increment: 10
First increment then print: 12
First print then decrement: 12
First decrement then print: 10

Logical Operatorsz-逻辑运算符

Operators Meaning Expression
&& Return true if all expressions are true (a>b) && (a>c)
|| Return true if any of the expressions is true (a>b)
! Return the complement of the expression a.not()

Example:

kotlin 复制代码
fun main(args : Array<String>){
    var x = 100
    var y = 25
    var z = 10
    var result = false
    if(x > y && x > z)
     println(x)
    if(x < y || x > z)
     println(y)
    if( result.not())
     println("Logical operators")
}

Output:

kotlin 复制代码
100
25
Logical operators

Bitwise Operators-位运算符

Operators Meaning Expression
shl signed shift left a.shl(b)
shr signed shift right a.shr(b)
ushr unsigned shift right a.ushr()
and bitwise and a.and(b)
or bitwise or a.or()
xor bitwise xor a.xor()
inv bitwise inverse a.inv()

Example:

kotlin 复制代码
fun main(args: Array<String>)
{
    println("5 signed shift left by 1 bit: " + 5.shl(1))
    println("10 signed shift right by 2 bits: : " + 10.shr(2))
    println("12 unsigned shift right by 2 bits:  " + 12.ushr(2))
    println("36 bitwise and 22: " + 36.and(22))
    println("36 bitwise or 22: " + 36.or(22))
    println("36 bitwise xor 22: " + 36.xor(22))
    println("14 bitwise inverse is: " + 14.inv())
}

Output:

kotlin 复制代码
5 signed shift left by 1 bit: 10
10 signed shift right by 2 bits: : 2
12 unsigned shift right by 2 bits:  3
36 bitwise and 22: 4
36 bitwise or 22: 54
36 bitwise xor 22: 50
14 bitwise inverse is: -15

Kotlin Output-Kotlin 输出

print() function // prints text

println() function // prints text and then moves the cursor to a new line

Example:

kotlin 复制代码
fun main(args: Array<String>)
{
    print("Hello, Geeks! ")
    println("This is Kotlin tutorial.")
    print("By GFG!")
}

Output:

kotlin 复制代码
Hello, Geeks! This is Kotlin tutorial.
By GFG!

Print Literals and Variables-打印字面量和变量

Example:

kotlin 复制代码
fun sum(a: Int,b: Int) : Int{
    return a + b
}

fun main(args: Array<String>){

    var a = 10
    var b = 20
    var c = 30L
    var marks = 40.4

    println("Sum of {$a} and {$b} is : ${sum(a,b)}")
    println("Long value is: $c")
    println("marks")
    println("$marks")
}

Output:

kotlin 复制代码
Sum of {10} and {20} is : 30
Long value is: 30
marks
40.4 

Kotlin Input-Kotlin 输入

readline() method

Scanner class

Example:

kotlin 复制代码
fun main(args : Array<String>) {
    print("Enter text: ")
    var input = readLine()
    print("You entered: $input")
}

Output:

kotlin 复制代码
Enter text: Hello, Geeks! You are learning how to take input using readline()
You entered: Hello, Geeks! You are learning how to take input using readline()

使用Scanner类从用户获取输入

Example:

kotlin 复制代码
import java.util.Scanner

fun main(args: Array<String>) {
    
    // create an object for scanner class
    val number1 = Scanner(System.`in`)       
    print("Enter an integer: ")
    // nextInt() method is used to take 
    // next integer value and store in enteredNumber1 variable
    var enteredNumber1:Int = number1.nextInt()
    println("You entered: $enteredNumber1")

    val number2 = Scanner(System.`in`)
    print("Enter a float value: ")

    // nextFloat() method is used to take next
    // Float value and store in enteredNumber2 variable
    var enteredNumber2:Float = number2.nextFloat()
    println("You entered: $enteredNumber2")

    val booleanValue = Scanner(System.`in`)
    print("Enter a boolean: ")
    // nextBoolean() method is used to take 
    // next boolean value and store in enteredBoolean variable
    var enteredBoolean:Boolean = booleanValue.nextBoolean()
    println("You entered: $enteredBoolean")
}

Output:

kotlin 复制代码
Enter an integer: 123
You entered: 123
Enter a float value:  40.45
You entered: 40.45
Enter a boolean:  true
You entered: true

在不使用Scanner类的情况下从用户获取输入:

readline () ! !将输入作为字符串,并在后面加上(!!)以确保输入值不为空。
Example:

kotlin 复制代码
fun main(args: Array<String>) {

    print("Enter an Integer value: ")
    val string1 = readLine()!!  

    // .toInt() function converts the string into Integer
    var integerValue: Int = string1.toInt() 
    println("You entered: $integerValue")

    print("Enter a double value: ")
    val string2= readLine()!!

    // .toDouble() function converts the string into Double
    var doubleValue: Double = string2.toDouble() 
    println("You entered: $doubleValue")
}

Output:

kotlin 复制代码
Enter an Integer value: 123
You entered: 123
Enter a double value:  22.22222
You entered: 22.22222

Kotlin Type Conversion- Kotlin类型转换

类型转换(也称为类型强制转换)是指将一种数据类型变量的实体更改为另一种数据类型。正如我们所知,Java支持从较小数据类型到较大数据类型的隐式类型转换。整数值可以分配给long数据类型。
但是,Kotlin不支持隐式类型转换。整数值不能分配给长数据类型。
Example:

kotlin 复制代码
public class TypecastingExample {  
   public static void main(String args[]) {  
      byte p = 12;  
      System.out.println("byte value : "+p);
      
      // Implicit Typecasting 
      // integer value can be assigned
      // to long data type
      long q = p;
    }
 }

Output:

kotlin 复制代码
var myNumber = 100
var myLongNumber: Long = myNumber       // Compiler error
// Initializer type mismatch: expected 'Long', actual 'Int'.
kotlin 复制代码
var myNumber = 100
var myLongNumber: Long = myNumber.toLong()     // compiles successfully

下面的辅助函数可用于将一种数据类型转换为另一种数据类型:

kotlin 复制代码
toByte() 
toShort() 
toInt() 
toLong() 
toFloat() 
toDouble() 
toChar() 

Example:

java 复制代码
fun main(args: Array<String>)
{
  
    println("259 to byte: " + (259.toByte()))
    println("50000 to short: " + (50000.toShort()))
    println("21474847499 to Int: " + (21474847499.toInt()))
    println("10L to Int: " + (10L.toInt()))
    println("22.54 to Int: " + (22.54.toInt()))
    println("22 to float: " + (22.toFloat()))
    println("65 to char: " + (65.toChar()))
    // Char to Number is deprecated in kotlin
    println("A to Int: " + ('A'.toInt()))
}

Output:

kotlin 复制代码
259 to byte: 3
50000 to short: -15536
21474847499 to Int: 11019
10L to Int: 10
22.54 to Int: 22
22 to float: 22.0
65 to char: A
A to Int: 65
相关推荐
CodeCraft Studio2 小时前
PDF处理控件Aspose.PDF教程:使用 Python 将 PDF 转换为 Base64
开发语言·python·pdf·base64·aspose·aspose.pdf
零点零一2 小时前
VS+QT的编程开发工作:关于QT VS tools的使用 qt的官方帮助
开发语言·qt
android_xc3 小时前
Android Studio国内仓库配置
android·ide·android studio
FunnySaltyFish3 小时前
Kotlin 2.2.20 上新:新contract、跨平台编译稳定、默认Swift导出……
kotlin
alexhilton3 小时前
runBlocking实践:哪里该使用,哪里不该用
android·kotlin·android jetpack
2501_915106324 小时前
iOS 使用记录和能耗监控实战,如何查看电池电量消耗、App 使用时长与性能数据(uni-app 开发调试必备指南)
android·ios·小程序·uni-app·cocoa·iphone·webview
雨白4 小时前
深入解析 Android 多点触摸:从原理到实战
android
lingchen19064 小时前
MATLAB的数值计算(三)曲线拟合与插值
开发语言·matlab
gb42152875 小时前
java中将租户ID包装为JSQLParser的StringValue表达式对象,JSQLParser指的是?
java·开发语言·python
一朵梨花压海棠go5 小时前
html+js实现表格本地筛选
开发语言·javascript·html·ecmascript