我正在做一个小任务,允许用户输入任何国家的地区并将它们存储在一个阵列中.另外,每次他进入一个区域时,系统都会要求他进入该输入区域的邻居并存储这些区域.
我的想法是,每次用户进入该区域时,系统都会将其存储在arrya中,并且每次他进入一个区域时,系统都会要求他在进入第二个区域之前进入该区域的邻居,依此类推,等等.将这些输入存储在第二数组中,该数组位于第一数组中相关条目的指针下.
我所做的仅仅是开始,如下所示:
import java.util.Arrays;
import java.util.Scanner;
public class Test {
public static void main(String[] args) {
Scanner kb = new Scanner(System.in);
String [] regionArray = new String[5];
for (int i = 0; i < regionArray.length; i++) {
System.out.print("Please enter the region: ");
regionArray[i] = kb.next();
//kb.nextLine(); // to get and discard the nextline token
}
System.out.print("You have entered: ");
System.out.println(Arrays.toString(regionArray));
}
}
例如,假设我们有4个区域:a,b,c,d,而a有两个邻居:b和d.在这种情况下,当用户进入第一个区域(a)时,将要求他输入它的邻居b和d,然后他将能够进入第二个区域b等,依此类推.
现在的问题是,如何生成第二个数组并将其链接到第一个数组?
请帮我
谢谢您的帮助.我真的很感激.
现在,我已经使用了Hashmap,并且一切正常,但是在检索特定区域或邻居时遇到另一个问题.除此之外,我需要检索其中的每一个separatley以便能够将四色定理应用于其中的每一个,那么我该怎么做呢?
我的代码如下:
import java.util.*;
import java.util.HashMap;
public class Test5{
public static void main(String[]args){
HashMap neighbour = new HashMap();
Scanner kb = new Scanner(System.in);
for(;{
System.out.println ("Enter the neighbours first then the region... and when finished press q");
String n = kb.nextLine();
if (n.equalsIgnoreCase("Q"))
break;
System.out.print("region: ");
String region = kb.nextLine();
neighbour.put(region, n);
}
System.out.println(neighbour);
}
}