有 Java 编程相关的问题?

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

java拆分和存储数组的正确方法?

我最近在这里问了一个问题,并学习了如何拆分阵列。现在我正忙于存储分离的数组。我知道这个代码可能是非常错误的,因为我只是想自己弄明白。这段代码的目的是查看在拆分数组(最多可以是10个名称和10度)后是否可以存储输入。系统的目的。我们的目的是看看他们是否在储存。我一直收到一个错误,无法找到符号结果。感谢您的帮助

import java.util.ArrayList;
import java.util.Arrays;
import javax.swing.JOptionPane;

public class PeerTutoring
{
public static void main(String[] args)
{
    ArrayList<String> list = new ArrayList<String>();

    int a = 0;
    int b = 1;
    int c = 0;
    int d = 1;

    for(int i=0;i<20;i++) {
        String line;
        line = JOptionPane.showInputDialog("Please enter tutor name and their highest earned degree.");
        String[] result = line.split("\\s+");
        String[] name = new result[a];
        String[] degree = new result[b];
        a++;
        b++;
        System.out.println(name[c]);
        System.out.println(degree[d]);
        c++;
        d++;
}
}

共 (2) 个答案

  1. # 1 楼答案

    除了马特·鲍尔之前说的,你还需要做些什么

        System.out.println(name);
        System.out.println(degree);
    

    并删除A++、B++、C++和D++。原因是,拆分时,结果[0]和结果[1]分别保存name和degree的值

    您需要一个单独的机制来将这些值存储在列表中

  2. # 2 楼答案

    new result[a]是。。。某种程度上。。。用于初始化包含大小为aresult实例的数组的语法。但这不是您的意思–您没有名为result的类,您只想从名为result的数组中获取元素。对吧?

    只需删除new声明中的[]和额外的name

    String name = result[a];
    String degree = result[b];
    

    我想你会发现the Java Tutorial: Arrays非常有用


    提示:如果你想打印一个数组,你不需要做所有这些工作。只需使用Arrays#toString()