scala
文章平均质量分 79
略...
研发咨询顾问
专注全栈开发和项目管理,诚接商务\业务合作,及问题难点解答和远程协助! 可私信或留言给作者,消息会在6小时内回复哦 (每篇文章末尾有作者名片,可添加联系,秒通过)
展开
-
数据库‘插入与更新‘同时结合(插入更新)
如果插入的数据表里面主键id是不存在的,那就不插入进去。如果是主键id是存在的,那就更新id的值,如果这个值是一样的,那就不会更新。// prop.put("username", "root") // 特备注意 有点人写user 有点人写 username,写法是不统一的。* @param updateCols 除了主键以外,所有需要更新的字段(注意不是主键,除了主键,其他的所有值都要填写进行更新)// println("创建dbcp2连接池:" + conn)// println("关闭连接池")原创 2023-04-25 09:00:22 · 845 阅读 · 0 评论 -
两个元组合并工具类
def connectTuple10(a:Product,b:Product):Tuple10[String,String,String,String,String,String,String,String,String,String] = { // Product是tuple的父类。val str = a.productIterator.mkString(",") +"," + b.productIterator.mkString(",") // 元组先转成字符串,然后在进行拼接。原创 2023-04-25 08:57:43 · 51 阅读 · 0 评论 -
公用工具-文本格式统一工具类
strRes = str.replaceAll("[\\s|\n|\t]","") // 删除所有的空格和换行和tab建。* 该类 包括对字符串前后去除空格,进行空格、换行删除、对英文的符号变成中文的符号(但部分中文的符号会变成英文符号);if( str.trim().equals("") ){ // 为空的话直接过滤。.replaceAll("[“]","\"") // 双引号 中英都是一样的。.replaceAll("[‘]","'") // 单引号 中英都是一样的。// 将符号的格式进行统一。原创 2023-04-24 16:20:42 · 56 阅读 · 0 评论 -
scala 主从管理系统案例
println("2----------Master建立从节点的注册信息: " + worker)//WorkerInfo重写过toString的。//为了防止master收到,而worker认为还没有收到,会重复发送,所以,多余的发送就不用接受 如果map集合里面没有这个k。println("6----------Master收到了从节点的心跳" + wInfo)println("1----------Worker向主节点发送注册信息")原创 2023-04-24 16:14:00 · 139 阅读 · 0 评论 -
Akka-actor并发模型
println("-------------------B的第"+count+"次发送")}val b = system.actorOf(Props(new B(a)),name = "B") //创建b,注:这里就不能用Props[B(..)]了,//还需要定义一个谁来开始先发送消息,这里就先定义成B先向a方法消息,不过要持有一个a的对象,a:ActorRef。println("-------------------B说 我要下线了")//a对象要作为参数传入new B(a),这样才可以向a发放消息。原创 2023-04-24 16:11:47 · 160 阅读 · 0 评论 -
时间反解析格式化案例
val strDate4=batchingCSV.myformatData("yyyyMMdd",new Date(2022,5,20,11,32,10).toString) //Tue Jun 20 11:32:10 CST 3922 , cst 39是一个时区表示,22表示年 转后39220621。val strDate2=batchingCSV.myformatData("yyyyMMdd"," 2018/09/20 12:43 ") //20180920 空格不影响。如果我们是读取文件的时间,原创 2023-04-24 16:10:58 · 112 阅读 · 0 评论 -
scala正则匹配
val pattern18 = "max[\\w|.]*".r // 上面不包括小数点 我们这里加个小数情况如结果成 如 max124as,max1234,max124,maxaava max124as,max1234.124abc,max124.1,maxaava.254。println((pattern1 findAllIn str).mkString(",")) // 使用逗号 , 连接返回结果 //运行结果Scala,Scala。原创 2023-04-24 16:09:53 · 428 阅读 · 0 评论 -
Scala高级特性
1)格式:def defName[T原创 2023-04-24 16:08:46 · 72 阅读 · 0 评论 -
scala模式匹配
case Array(5) => println("数组中长度为1,且值为5")case Array(x,_*) => println("数组中包含多个元素")case Array(x,y) => println("数组中包含两个元素")case Array(x,y,z)=>println("数组中包含三个元素")case Car(name) => println("汽车 " +name)case Array(x) => println("数组中包含一个元素")原创 2023-04-24 16:07:27 · 40 阅读 · 0 评论 -
集合(创建不能用new)
def connectTuple10(a:Product,b:Product):Tuple10[String,String,String,String,String,String,String,String,String,String] = { // Product是tuple的父类。val str = a.productIterator.mkString(",") +"," + b.productIterator.mkString(",") // 元组先转成字符串,然后在进行拼接。原创 2023-04-24 16:05:54 · 69 阅读 · 0 评论 -
函数式编程
3.当然 一开始你肯定不知道什么rdd里面什么类型的。scala> myList.flatMap( (x:List[Int])=>x.map(_*2) ) //注意:声明类型要加括号,否则会出错,(1)f是参数名,这个参数是"函数类型"的,类型为"(Double)=>(Double)" 注意这是一个整体,可以认为传参数 就是 传函数。2) 类库提供的函数做为匿名函数:如 def someAction( f : (Double)=>(Double)) = f(10);原创 2023-04-24 09:04:23 · 44 阅读 · 0 评论 -
数组(创建不能用new)
kk1: Array[Int] = Array(3) scala> kk1.update(0,11) scala> kk1.update(1,11) //可以看出 赋值失败。2)注意:val虽然是常量,不能对值修改,但是以下是数组类型的,这个值就是数组的,"数组里面"的修改并并没有更改"数组",所以,完全没有矛盾,但var是可以更改别的数组。(1)最大值:max、最小值:min、大到小排:sortWith(_>_)、小到大排序:sortWith(_原创 2023-04-23 08:59:04 · 119 阅读 · 0 评论