当前位置: 首页 > 知识库问答 >
问题:

不理解方法类型[重复]

康照
2023-03-14

在自学Java时,我遇到了一个关于方法类型/返回类型的令人困惑的部分?

例如,

public <U> IList<U> map(IFunc<T, U> f) {
    return new ConsList<U>(f.apply(this.first), this.rest.map(f));
}

共有1个答案

苍轶
2023-03-14
匿名用户

它被称为类型参数表。它表示在该map方法中表示的泛型类。我所说的泛型类是指任何你能想到的类。它可以是我的房子。java,MyCar。java字符串。java

IList

 类似资料:
  • 此代码在Java 8中编译,但在Java 7中编译失败: 它不能推断从映射返回的映射的具体类型。空(): 如果将调用更改为f(Map),则会编译。 但是如果您将调用更改为f(Map.empty())。放(1,“A”)。put(2,“B”)) ,它无法在Java 7和8上再次编译。为什么?

  • 重排序方法:reverse()和sort()。 reverse 对数组进行反转操作 { let array = [1,2,3,4]; array.reverse()//array = [4,3,2,1] } sort 对数组进行排序 { let array = [1,2,5,10]; array.sort() console.log(array) }

  • 我正在做一个体验,尝试用以下方式重写泛型类的方法: 为什么我不能?编译错误是 yGenFun。java:15:错误:对doX的引用不明确,Do中的方法doX(A)和MyGenFun中的方法doX(T)都匹配x.doX(“测试”);^其中A、T是类型变量:在类Do T中声明的extends对象扩展在类MyGenFun 1 error中声明的CharSequence 如果我注释“第1行”,我可以编译代

  • 在java中,我们可以缩小返回类型和throws异常类型(甚至删除throws子句): 但是,参数类型呢(如果A采用< code>T,那么为什么B不采用< code >?超级T)如: 让我们考虑一下我认为完全符合逻辑的这段代码: 所以我要说的是,在使用的代码上下文中仍然有效。

  • 我想这样设置参数的类型: 当我尝试这样做时,会引发错误:NameError:名称'Tree'未定义