有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

Java方法命名约定的类型和类型差异?

我正在读一本有效的Java书籍,我有一个关于方法命名约定的问题,我应该何时使用toType和asType?例如,我们有toString、toArray和asList。为什么我们不叫它toList而不用asList

这听起来是个愚蠢的问题,但我只是好奇其中的差异

我从另一个线程中读到,“如果方法返回相同的实例,但转换为另一种类型,请使用AsXXX方法。如果方法使用对象数据构造不相关类型的新实例,请使用ToXXX方法。”但是为什么在Java中数组到列表和列表到数组是不同的呢


共 (1) 个答案

  1. # 1 楼答案

    asXtoX之间的区别可以用Arrays.asList来说明

    Arrays.asList获取一个数组并创建该数组支持的列表:

    Returns a fixed-size list backed by the specified array. (Changes to the returned list "write through" to the array.)

    它不会创建一个独立的列表

    另一方面,像toStringtoArray这样的方法会创建一个独立于创建它的输入的新实例

    换句话说,asX接受一种类型的对象并创建该对象的另一种类型的视图toX接受一个输入对象并创建一个不同类型的新对象,由输入对象初始化