Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/394.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 无法取消引用int的错误?_Java_Arrays - Fatal编程技术网

Java 无法取消引用int的错误?

Java 无法取消引用int的错误?,java,arrays,Java,Arrays,这个构造函数有一个错误,我不知道如何修复?我是java的初学者。这是我试图学习的一个示例练习: /** * Create an array of size n and store a copy of the contents of the * input argument * @param intArray array of elements to copy */ public IntArray11(int[] intArray) { int i = 0; String

这个构造函数有一个错误,我不知道如何修复?我是java的初学者。这是我试图学习的一个示例练习:

/** 
 * Create an array of size n and store a copy of the contents of the
 * input argument
 * @param intArray array of elements to copy 
*/
public IntArray11(int[] intArray)
{
    int i = 0;
    String [] Array = new String[intArray.length];
    for(i=0; i<intArray.length; ++i)
    {
    Array[i] = intArray[i].toString();
    }
}
/**
*创建大小为n的数组并存储
*输入参数
*@param intArray要复制的元素数组
*/
公共内部11(内部[]内部)
{
int i=0;
字符串[]数组=新字符串[intArray.length];

for(i=0;i
int
在java中不是一个对象(它是一个对象),因此不能调用它上的方法

解决这个问题的一个简单方法是使用

您的代码试图调用
int
值的toString()方法。在Java中,
int
是一种基本类型,没有方法。请更改行:

Array[i] = intArray[i].toString();

代码应该运行。顺便说一下,变量和字段应该使用lowerCamelCase


编辑:值得一提的是,String.valueOf(int)比Integer.toString(int)在我的系统(Java 1.7)上快一点。

public String[] convertToStrings(int... ints) {
    String[] ret = new String[ints.length];
    for(int i = 0; i < intArray.length; ++i)
        ret[i] = "" + ints[i];
    return ret;
}

您遇到了什么错误?请使用适当的约定:方法名和变量名应以小写字母开头(请参阅我的答案,了解为什么String.valueOf不能快于Integer.toString;),然后它可能是一个基准人工制品。我知道我应该使用JMH进行度量,但我的mvn存储库最近有些破损。
public String[] convertToStrings(int... ints) {
    String[] ret = new String[ints.length];
    for(int i = 0; i < intArray.length; ++i)
        ret[i] = "" + ints[i];
    return ret;
}
public List<String> convertToStrings(int... ints) {
    return IntStream.of(ints).mapToObj(Integer::toString).collect(toList());
}
/**
 * Returns the string representation of the {@code int} argument.
 * <p>
 * The representation is exactly the one returned by the
 * {@code Integer.toString} method of one argument.
 *
 * @param   i   an {@code int}.
 * @return  a string representation of the {@code int} argument.
 * @see     java.lang.Integer#toString(int, int)
 */
public static String valueOf(int i) {
    return Integer.toString(i);
}