Java遍历数组

Java遍历数组,java,arrays,Java,Arrays,我正在尝试编写一个java程序,其中有两个数组,一个表示名称(String),另一个表示年龄(integer)。程序应该迭代并要求每个数组最多包含10个名称和年龄,然后显示所有数组项以及每个数组项的最大和最小年龄,或者除非用户中途输入“完成”或“完成” 我有下面的代码,尽管我很难循环并询问用户的姓名和年龄x10 有什么建议吗 多谢各位 import java.util.Scanner; public class AgeName { public static void main(Stri

我正在尝试编写一个java程序,其中有两个数组,一个表示名称(String),另一个表示年龄(integer)。程序应该迭代并要求每个数组最多包含10个名称和年龄,然后显示所有数组项以及每个数组项的最大和最小年龄,或者除非用户中途输入“完成”或“完成”

我有下面的代码,尽管我很难循环并询问用户的姓名和年龄x10

有什么建议吗

多谢各位

import java.util.Scanner;
public class AgeName {
    public static void main(String[] args){
        Scanner input = new Scanner(System.in);

        int numTried = 1;  
        int ageTried = 1;
        boolean stop = false;
        String name = "";

        String[] num = new String[10];
        int[] age = new int[10];

        while(numTried <= 10 && ageTried <=10 && !stop){
            System.out.print("Enter name " + numTried + ": ");
            name = input.nextLine();

            System.out.print("Now enter age of " + name + ": ");
            int userAge = input.nextInt();

            if(name.toUpperCase().equals("DONE")){
                stop = true;
            }else{
                num[numTried - 1] = name;
                age[ageTried -1] = userAge;
            }

            numTried ++;
            ageTried ++;
        }

        for(String output : num){
            if(!(output == null)){
                System.out.print(output + "," );
            }
        }

        input.close();
    }
}
import java.util.Scanner;
公共类代理{
公共静态void main(字符串[]args){
扫描仪输入=新扫描仪(System.in);
int numTried=1;
int=1;
布尔停止=假;
字符串名称=”;
String[]num=新字符串[10];
int[]年龄=新int[10];
而(numTried您可以使用
地图

HashMap map=newhashmap();
String[]num=新字符串[10];
对于(int i=0;i<10;i++){
系统输出打印(“输入名称”+numTried+“:”);
name=input.nextLine();
System.out.print(“现在输入年龄“+name+”:”);
int userAge=input.nextInt();
num[i]=名称;
map.put(名称、用户年龄);
}
for(字符串输出:num){
如果(!(输出==null)){
系统输出打印(输出+”,“+映射获取(输出));
}
}

Map
顾名思义,允许您将一种对象类型映射到另一种对象类型
方法添加一条记录,该记录包含一对
字符串和一个
整数,并将字符串映射到整数。
字符串必须是唯一的!!您应该在任何迭代中询问用户是否完成了操作。例如,您可以将字符串变量设置为answer=“NO”,并在任何迭代结束时询问用户是否已完成。如果尝试此操作,请记住在迭代块条件下用answer替换stop变量

System.out.println("Are you done: Choose -> YES or NO?");
answer = input.nextLine();
if (answer == "YES")
    break;

你解决了吗?
System.out.println("Are you done: Choose -> YES or NO?");
answer = input.nextLine();
if (answer == "YES")
    break;