20.scala视图界定

news2024/10/5 14:41:00

目录

  • 概述
  • 实践
    • 代码
    • 执行
  • 结束

概述

scala 中的视图界定

实践

代码

/**
 * 视图界定
 */
object Genericity03 {
  def main(args: Array[String]): Unit = {

    println(new MaxInt(1,2).compare)
    println(new MaxLong(1L,2L).compare)
    // 不行
//    println(new MaxValue(1,2).compare)
    // 行,隐式转换
    println(new MaxValue[Integer](1,2).compare)

    println(new MaxValue2(1,2).compare)
  }

  // <% 视图界定 int2Integer
  class MaxValue2[T <% Comparable[T]] (a:T,b:T){
    def compare = if (a.compareTo(b)>0)  a else b
  }

  class MaxValue[T <: Comparable[T]] (a:T,b:T){
    def compare = if (a.compareTo(b)>0)  a else b
  }

  class MaxInt(a: Int, b: Int) {
    def compare = if (a > b) a else b
  }

  class MaxLong(a: Long, b: Long) {
    def compare = if (a > b) a else b
  }
}

执行

在这里插入图片描述

结束

scala视图界定 至此结束。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1469684.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

[c++] 深拷贝和浅拷贝,拷贝构造、赋值运算符

1 拷贝构造和赋值运算符 1.1 拷贝构造 拷贝构造在如下场景会被调用&#xff1a; &#xff08;1&#xff09;函数调用时&#xff0c;函数参数是对象的值传递 &#xff08;2&#xff09;声明对象同时初始化的时候(而不是声明和初始化分开&#xff0c;因为声明的时候就创建了对…

游戏配置内存“瘦身”策略

背景 游戏配置数据绝对是游戏服务器进程的内存大头,有些游戏服务器单纯数据配置的容量就超过一个G。因此,这部分内存优化也就放在首要位置了。 优化策略 在《服务器进程如何降低内存》一文中,我们讲述了可以通过“优化游戏配置缓存”来降低游戏服务器进程的内存使用量。本…

【电子通识】认识FMEA(失效模式和影响分析)

FMEA是Failure Mode and Effect Analysis的英文缩写&#xff0c;中文名称为失效模式和影响分析。主要应用于航空航天、食品、汽车和核电等行业。 FMEA讨论的是事先策划以及执行措施&#xff0c;预防问题的发生或控制问题的发展&#xff0c;降低设计和过程的风险。由于问题还没…

C语言------操作符的巧妙使用

1.计算一个数字二进制补码里面1的个数 &#xff08;1&#xff09;方法一 根据这个10进制的整数&#xff0c;对这个数进行%10&#xff0c;/10不断地进行下去&#xff0c; %10得到最后一位&#xff0c;/10得到舍去最后一位之后剩余的数&#xff1b; 同理得到&#xff1a;二进…

深入理解 CSS 定位与布局高级技巧

更多web开发知识欢迎访问我的专栏>>> CSS高级 目标&#xff1a;掌握定位的作用及特点&#xff1b;掌握 CSS 高级技巧 01-定位 作用&#xff1a;灵活的改变盒子在网页中的位置 实现&#xff1a; 1.定位模式&#xff1a;position 2.边偏移&#xff1a;设置盒子的位…

构造百万测试数据五大方法!

在测试的工作过程中&#xff0c;很多场景是需要构造一些数据在项目里的&#xff0c;方便测试工作的进行。比如下面的场景&#xff1a; 项目需要做性能测试&#xff0c;需要大量的数据就算是功能测试&#xff0c;比如测试搜索功能&#xff0c;需要有数据做搜索测试需要检查数据…

Windows Server 2012 IIS中发布ASP.NET CORE项目

服务器安装IIS&#xff1a; 微软官网下载SDK&#xff1a; 下载Runtime官网&#xff1a;https://dotnet.microsoft.com/download/dotnet-core 安装成功重启IIS&#xff1a; VS发布项目&#xff1a;

js滑动窗口算法

滑动窗口算法&#xff08;Sliding Window Algorithm&#xff09;是一种用于解决数组或字符串的子串问题的有效算法。其核心思想是通过维护一个窗口&#xff0c;根据问题的要求移动窗口的左右边界&#xff0c;从而在窗口内部找到符合条件的子串。 一般步骤如下&#xff1a; 初…

acwing算法学习笔记 ------ 双链表

1、定义 这里可以做一个投机取巧&#xff0c;我们不再像单链表去用head去存头和尾&#xff0c;直接让r[0] 1,l[1] 0; idx 2.进行初始化&#xff0c; 解释一下l[N] 和 r[N] l[N]:是表示指向左面下一个节点下标&#xff0c; r[N]:表示指向下一个节点的下标。大家不用担心i…

学习 LangChain 的 Passing data through

学习 LangChain 的 Passing data through 1. Passing data through2. 示例 1. Passing data through RunnablePassthrough 允许不改变或添加额外的键来传递输入。这通常与 RunnableParallel 结合使用&#xff0c;将数据分配给映射中的新键。 RunnablePassthrough() 单独调用&…

【Java程序员面试专栏 算法思维】一 高频面试算法题:排序算法

一轮的算法训练完成后,对相关的题目有了一个初步理解了,接下来进行专题训练,以下这些题目就是汇总的高频题目,本篇主要聊聊排序算法,包括手撕排序算法,经典的TOPK问题以及区间合并,所以放到一篇Blog中集中练习 题目关键字解题思路时间空间快速排序双指针+递归+基准值分…

U盘乱码与文件丢失:恢复指南与预防策略

U盘乱码文件丢失是一种常见的技术问题&#xff0c;通常表现为存储在U盘中的文件名显示为不可识别的字符或文件无法正常打开&#xff0c;有时甚至文件会完全消失。这种情况可能由多种原因引起&#xff0c;包括但不限于文件系统损坏、不正确的拔插操作、病毒感染、兼容性问题等。…

Linux学习之vi/vim详细介绍

目录 ​编辑 1. 什么是 vim&#xff1f; 2. vi/vim 的使用 2.1 命令模式 2.2 输入模式 2.3 底线命令模式 3. vi/vim 使用实例 3.1 使用 vi/vim 进入一般模式 3.2 按下 i 进入输入模式(也称为编辑模式)&#xff0c;开始编辑文字 3.3 按下 ESC 按钮回到一般模式…

相信未来:技术的进步意味着重构

十年以来&#xff0c;呼声最高&#xff1a;AI、BigData、Cloud Service。 以本人看来&#xff0c;仅AI技术的进步和应用&#xff0c;整个软件行业&#xff0c;所有软件将被重构。 提醒&#xff1a;非大学毕业、非计算机及相关专业&#xff0c;在IT这个行业&#xff0c;特别是…

大数据开发项目--音乐排行榜

环境&#xff1a;windows10&#xff0c;centos7.9&#xff0c;hadoop3.2、hbase2.5.3和zookeeper3.8完全分布式&#xff1b; 环境搭建具体操作请参考以下文章&#xff1a; CentOS7 Hadoop3.X完全分布式环境搭建 Hadoop3.x完全分布式环境搭建Zookeeper和Hbase 1. 集成MapReduce…

安装 WSL 报错 Error code: Wsl/WININET_E_NAME_NOT_RESOLVED 问题解决

问题描述 在执行 wsl --install 安装Windows子系统Linux WSL (Windows Subsystem for Linux) 时报错&#xff1a; 无法从“https://raw.githubusercontent.com/microsoft/WSL/master/distributions/DistributionInfo.json”中提取列表分发。无法解析服务器的名称或地址 Error…

代码随想录算法训练营第60天 | 647.回文子串 516.最长回文子序列

回文子串 这道题主要难在dp数组的定义以及递推关系的构建。如果直接用 dp[i] 表示[0,i]子串中包含的回文串的数目&#xff0c;是无法找到递推关系的。通过回文串的性质可以构造这样的递推关系&#xff1a;对于判断[i,j]是否是回文串&#xff0c;如果s[i] s[j]&#xff0c;只需…

网络攻防之ARP欺骗和DNS劫持实验

目录 ARP单向欺骗 ARP双向欺骗 DNS劫持 实验环境&#xff1a; 攻击主机&#xff1a;kali2023虚拟机&#xff0c;IP地址为192.168.133.141 靶机&#xff1a;Windows10虚拟机&#xff0c;IP地址为192.168.133.129 网关地址&#xff1a;192.168.133.2 (1)ARP协议介绍 在以…

2/23 work

1> 使用消息队列完成两个进程间相互 a: #include<myhead.h> #define MSGSIZE sizeof(struct msgbuf)-sizeof(long) struct msgbuf {long mtype;char mtext[1024];}; int main(int argc, const char *argv[]) {pid_t pidfork();if(pid>0){key_t key 0;if((keyfto…

Git笔记——3

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 前言 一、合并模式和分支策略 二、bug分支 三、强制删除分支 四、创建远程仓库 五、克隆远程仓库_HTTPS和_SSH 克隆远程仓库_HTTPS 克隆远程仓库_SSH 六、向远程仓库…