为了账号安全,请及时绑定邮箱和手机立即绑定

为什么需要导入 java.util.* 才能使用 Arrays.toString()

为什么需要导入 java.util.* 才能使用 Arrays.toString()

qq_花开花谢_0 2023-04-13 14:46:04
如果没有某种原因,它们Arrays.toString()将无法工作。import java.util.*这是一个简单的 java 代码,它根据用户输入的字符串的长度从数组中删除一个元素。import java.util.*;public class conjunction {    public static String func(String x[], int input) {        String temp[] = new String[x.length - 1];        String temp2[] = new String[x.length - 1];        for (int c = 0; c < x.length; c++) {            if (x[c].length() == input & c + 1 < x.length) {                temp2[c] = x[c + 1];                x[c + 1] = x[c];                x[c] = temp2[c];            } else if (x[c].length() != input) {                temp[c] = x[c];            }        }        return Arrays.toString(temp);    }}它说它无法解析符号数组。
查看完整描述

5 回答

?
侃侃无极

TA贡献2051条经验 获得超10个赞

那是因为该类Arrays位于package 中java.util,所以您要么需要显式导入它(使用import java.util.Arrays;),要么从该包中导入所有内容(使用通配符import java.util.*;

更一般地说,Java 中的所有内容都存在于一个包中,需要导入,除了 package 之外java.lang,其中类Stringlive 是默认导入的。


查看完整回答
反对 回复 2023-04-13
?
子衿沉夜

TA贡献1828条经验 获得超3个赞

Java 中从import不需要An ,事实上它在字节码级别不存在。如果您删除导入语句并将您的更改为return

return java.util.Arrays.toString(temp);

减少import了开发时所需的输入(这是程序员的便利)。


查看完整回答
反对 回复 2023-04-13
?
LEATH

TA贡献1936条经验 获得超6个赞

import java.util.Arrays;也有效



查看完整回答
反对 回复 2023-04-13
?
九州编程

TA贡献1785条经验 获得超4个赞

usingimport语句在 JAVA 中是不同的初学者 OOP 概念。根据你的问题toString(temp)是类的静态方法Arrays。并且该类Arrays属于包java.util,因此您需要使用该静态方法import java.util.Arrays。需要注意的一点是每个java类默认importjava.lang.*

在这里我分享一些关于包的想法。

JAVA 中的所有东西都属于包。在 Java 中使用包是为了避免名称冲突和控制类、接口和枚举等的访问。包可以定义为一组相似类型的类、接口、枚举或子包。使用包可以更容易地找到相关的类,它还为具有数百个类和其他文件的项目提供了良好的结构。

主要 Java 项目支持两种类型的包:内置用户定义

使用 import 关键字

import关键字用于将内置和用户定义的包导入到您的 java 源文件中,以便您的类可以直接使用其名称来引用另一个包中的类。

有 3 种不同的方式来引用不同包中存在的任何类:

  1. Using fully qualified name (But this is not a good practice.): Like return java.util.Arrays.toString(temp);这通常在两个包具有相同名称的类时使用。例如:java.utiljava.sql包包含Date class.

  2. 仅导入您要使用的类:喜欢import java.util.Arrays;Arrays那么只有名称包中名称为名称的类util才可以使用。

  3. 要从特定包中导入所有类:比如import java.util.*. 它使该包(package)的所有类和接口util都可以访问,但子包内的类和接口将不可用。

要记住的要点

  • 当没有指定包名时,类被定义到默认包中,包本身没有名字。

  • Java.lang.*Java 中的包:提供对 Java 编程语言的设计至关重要的类。


查看完整回答
反对 回复 2023-04-13
?
肥皂起泡泡

TA贡献1829条经验 获得超6个赞

toString() 是 Arrays 类(静态)中的一个方法,此类位于 java.util 包中。此类的源文件位于名为 util 的包中,该包位于名为 java 的包中。

我们也可以使用包限定符而不是导入。import 语句并不总是必需的。可以使用“.”明确限定类引用。操作员。
例如java.util.ArrayList<String> str //fully qualified

有一种情况需要限定——当两个类具有相同的名称但在不同的包中时。
例如java.util.Timerandjava.swing.Timer
这里的名字 Timer 是有歧义的,没有限定就不能使用。


查看完整回答
反对 回复 2023-04-13
  • 5 回答
  • 0 关注
  • 184 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信