zoukankan      html  css  js  c++  java
  • [Kotlin] Compare Functional Programming in Java and Kotlin

    Java way:

    package com.rsk.java;
    
    import java.util.function.Function;
    
    public class FPExample {
        public static Function<String, String> toSentenceCase = x -> x.substring(0, 1).toUpperCase() + x.substring(1);
    
        public static String applySomeFunctionToAString(String inputString, Function<String, String> myFunction) {
            return myFunction.apply(inputString);
        }
    
        public static void main(String args[]) {
            String result = applySomeFunctionToAString("hello", toSentenceCase);
            System.out.println(result);
        }
    }

    Kotlin:

    package com.rsk
    
    fun toSentenceCase(x: String) = x[0].toUpperCase() + x.substring(1)
    
    fun applySomeFunctionToAString(inputString: String, myFunction: (String) -> String): String {
        return myFunction(inputString);
    }
    
    fun main(args: Array<String>) {
        val result = applySomeFunctionToAString("hello", ::toSentenceCase)
        val result2 = applySomeFunctionToAString("hello") {it.toUpperCase()}
        println(result)
        println(result2)
    }
  • 相关阅读:
    Hexo yilia 主题启用及相关设置
    Hexo Next 主题启用及相关设置
    值得一用的 Windows 软件清单
    ES6新特性2
    ES6新特性1
    手写promise第三天
    手写promise第一天
    Generator异步函数
    函子Functor
    柯里化函数组合的学习
  • 原文地址:https://www.cnblogs.com/Answer1215/p/13850077.html
Copyright © 2011-2022 走看看