为什么需要导入java.util.*才能使用Arrays.toString()
由于某种原因,如果没有导入java.util.*,则为什么需要导入java.util.*才能使用Arrays.toString(),java,Java,由于某种原因,如果没有导入java.util.*,则Arrays.toString()将无法工作。下面是一个简单的java代码,它根据用户输入的字符串长度从数组中删除元素 import java.util.*; public class conjunction { public static String func(String x[], int input) { String temp[] = new String[x.length - 1]; Stri
Arrays.toString()
将无法工作。下面是一个简单的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);
}
}
import java.util.*;
公共类连词{
公共静态字符串func(字符串x[],int输入){
字符串温度[]=新字符串[x.length-1];
字符串temp2[]=新字符串[x.length-1];
for(int c=0;c
它说它无法解析符号数组。code>import java.util.Arrays也可以工作这是因为它存在于包
java.util
中,所以您要么需要显式地导入它(使用import java.util.Arrays;
),要么从该包导入所有内容(使用通配符import java.util.*
)
更一般地说,Java中的所有内容都存在于一个包中,需要导入,除了类
String
live,默认情况下是导入的。Java中从不需要导入,事实上它在字节码级别不存在。如果删除导入语句并将return
更改为
return java.util.Arrays.toString(temp);
“代码>导入”可减少开发时所需的类型(这是程序员的方便)。toString()是数组类(静态)中的方法,该类位于包java.util中。此类的源文件位于名为util的包中,该包名为java
我们也可以使用包限定符而不是导入。
导入语句并不总是必需的。类引用可以使用“.”运算符进行显式限定。
例如java.util.ArrayList str//完全限定
有一种情况需要资格认证——两个类名称相同,但在不同的包中。
例如java.util.Timer
和java.swing.Timer
在这里,Timer的名称是不明确的,没有限定就不能使用。使用import
语句是JAVA中的初学者OOP概念。。根据您的问题toString(temp)
是数组
类的静态方法。而Arrays
类属于包java.util
,因此使用该静态方法需要导入java.util.Arrays
。需要注意的是,默认情况下每个java类导入java.lang.*
在这里,我分享一些关于包装的想法
JAVA中的所有东西都属于包。包在Java中使用,以避免名称冲突并控制类、接口和枚举等的访问。包可以定义为一组类似类型的类、接口、枚举或子包。使用包可以更容易地找到相关的类,并且它还为包含数百个类和其他文件的项目提供了良好的结构
Java项目主要支持两种类型的包:内置的和用户定义的
使用导入关键字
import
关键字用于将内置和用户定义的包导入到java源文件中,以便您的类可以通过直接使用其名称引用另一个包中的类
有3种不同的方法可以引用不同包中的任何类:
使用完全限定名(但这不是一个好的做法):比如返回java.util.Arrays.toString(temp)代码>这通常在两个包具有相同名称的类时使用。例如:java.util
和java.sql
包包含dateclass
仅导入要使用的类:如import java.util.Arrays代码>。那么只有名为util
的包中名为Arrays
的类才能使用
要从特定包导入所有类,请执行以下操作:import java.util.*
。它使此包(util
package)的所有类和接口都可以访问,但子包中的类和接口将不可使用
要记住的要点
- 如果未指定包名,则会将类定义到默认包中,而包本身没有名称
Java.lang.
Java包:提供了Java编程语言设计的基础类
这只是方法类而不是main()Arrays
类位于java.util
包中。此类提供静态方法来动态创建和访问Java数组。由于您使用的是array.toString
,因此需要导入该包才能使用它。这不仅有效,而且通常也是更好的方法。