gpt4 book ai didi

java.lang.UnsupportedClassVersionError 与 arraylist

转载 作者:行者123 更新时间:2023-12-02 08:03:12 28 4
gpt4 key购买 nike

我以前从未见过这个错误,我以前也从未使用过 arrayList,我只是编写这段代码来了解它是如何工作的。我主要是想编写一种方法,如果下一个元素等于它(最后两个元素就是这种情况),则删除 2D 数组元素我正在同一台机器上编译和运行,并且我刚刚更新了 java 所以我正在运行最新版本。我使用的是 Linux Ubuntu 11.10。这是代码:

import java.util.*; 

public class Test{
public static void main(String[] args){

float[][] a = {{304.0f, 2743.0f},
{304.0f, 2743.0f},
{304.0f, 2754.0f},
{304.0f, 2754.0f},
{325.0f, 2764.0f},
{346.0f, 2775.0f},
{367.0f, 2775.0f},
{367.0f, 2764.0f},
{367.0f, 2754.0f},
{356.0f, 2723.0f},
{325.0f, 2691.0f},
{304.0f, 2670.0f},
{304.0f, 2639.0f},
{356.0f, 2639.0f},
{377.0f, 2650.0f},
{377.0f, 2650.0f}};

foo(a);
for (int i = 0; i < a.length; ++i)
System.out.println(a[i]);

}

public static float[][] foo(float[][] array){

List<float[]> al = new ArrayList<float[]>(Arrays.asList(array));

for (int i = 0; i < al.size(); ++i)
if (al.get(i)[0] == al.get(i+1)[0] && al.get(i)[1] == al.get(i+1)[1])
al.remove(i);

float[][] b = new float[al.size()][2];

for (int i = 0; i < al.size(); ++i)
b[i] = al.get(i);

return b;
}
}

我得到的错误是:

Exception in thread "main" java.lang.UnsupportedClassVersionError: Test : Unsupported major.minor version 51.0
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:634)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:277)
at java.net.URLClassLoader.access$000(URLClassLoader.java:73)
at java.net.URLClassLoader$1.run(URLClassLoader.java:212)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:205)
at java.lang.ClassLoader.loadClass(ClassLoader.java:321)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:294)
at java.lang.ClassLoader.loadClass(ClassLoader.java:266)
Could not find the main class: Test. Program will exit.

如果您能建议一个更简单的方法来做到这一点,我将非常感激。预先非常感谢!

最佳答案

这意味着您的 javac.exe 版本比 java.exe 版本更新。 javac.exe 生成的类文件无法被旧的 java.exe 读取。通常,人们在 C:\WINDOWS 之类的疯狂地方有一个额外的旧 java.exe 副本,是由错误的安装程序留下的。找到它并删除它或修复您的PATH,以便首先找到您的新副本。

关于java.lang.UnsupportedClassVersionError 与 arraylist,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8584849/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com