转载

从Java到Kotlin——方法

fun hello() { println("Hello, World!") } 

Java

public void hello(){ System.out.print("Hello, World!"); } 

带参数、无返回值

fun hello(name:String) { println("Hello,$name!") } 

Java

public void hello(String name){ System.out.print("Hello, " + name + "!"); } 

参数带有默认值

fun hello(name:String="World") { println("Hello,$name!") } 

Java

public void hello(String name){ if (name == null) { name = "World"; } System.out.print("Hello, " + name + "!"); } 

带返回值

fun hasItems() : Boolean { return true } 

Java

public boolean hasItems(){ return true; } 

简写

fun cube(x:Double) : Double = x * x * x 

Java

public double cube(double x){ return x * x * x; } 

传入数组

fun sum(vararg x: Int) { } 

Java

public int sum(int... numbers){ } 

主函数/Main方法

fun main(args:Array<String>) { } 

Java

public class MyClass{ public static void main(String[] args){ } } 

多个参数

fun main(args:Array<String>) { openFile("file.txt", readOnly = true) } fun openFile(filename:String, readOnly:Boolean) : File { } 

Java

public static void main(String[]args){ openFile("file.txt", true); } public static File openFile(String filename,boolean readOnly){ } 

可选参数

fun main(args:Array<String>) { createFile("file.txt") createFile("file.txt", true) createFile("file.txt", appendDate = true) createFile("file.txt", true, false) createFile("file.txt", appendDate = true, executable = true) createFile("file.txt", executable = true) } fun createFile(filename:String, appendDate:Boolean=false, executable:Boolean=false): File { } 

Java

public static void main(String[]args){ createFile("file.txt"); createFile("file.txt", true); createFile("file.txt", true, false); createExecutableFile("file.txt"); } public static File createFile(String filename){ } public static File createFile(String filename,boolean appendDate){ } public static File createFile(String filename,boolean appendDate, boolean executable){ } public static File createExecutableFile(String filename){ } 

泛型

fun init() { val module = createList<String>("net") val moduleInferred = createList("net") } fun <T>createList(item:T): List<T> { } 

Java

public void init(){ List<String> moduleInferred = createList("net"); } public <T> List<T>createList(T item){ } 
原文  http://kongqw.com/2018/03/07/2018-03-07-从Java到Kotlin——方法/
正文到此结束
Loading...