lectura de matriz de cadenas

Mallige.BS:

Estoy intentando leer un conjunto de valores de cadena en Java, pero soy capaz de sólo lectura hasta que el valor n-1 es decir, para por ejemplo, si el tamaño de matriz de cadena es de 4 soy bala para dar sólo 3 entradas. aquí está mi código.

package my_project;

import java.util.Scanner;

public class ArrayString 
{
    public static void main(String[] args)
    {
        int n;
        String key;
        Scanner sc=new Scanner (System.in);
        System.out.println("Enter the no of courses:");
        n=sc.nextInt();
        if(n<=0)
        {
            System.out.println("Invalid range");
            System.exit(0);
        }
        System.out.println("The available courses are:");
        String [] courses=new String[n];
        for(int i=0;i<n;i++)
        {
            courses[i]=sc.nextLine();
        }
        for(int i=0;i<n;i++)
        {
            if(courses[i].equals("java"))
            {
                System.out.println("course is available ");
                System.exit(0);
            }
        }
    }

}
oleg.cherednik:
public static void main(String... args) {
    try (Scanner sc = new Scanner(System.in)) {
        System.out.print("Enter the no of courses: ");
        int n = sc.nextInt();
        sc.nextLine();  // add this to read String after int

        if (n <= 0)
            System.out.println("Invalid range");
        else {
            System.out.println("The available courses are:");
            String[] courses = new String[n];

            for (int i = 0; i < n; i++) {
                System.out.format("#%d: ", i + 1);
                courses[i] = sc.nextLine();
            }

            for (int i = 0; i < n; i++) {
                if ("java".equalsIgnoreCase(courses[i])) {
                    System.out.println("course is available");
                    return;
                }
            }
        }
    }
}

Supongo que te gusta

Origin http://10.200.1.11:23101/article/api/json?id=400878&siteId=1
Recomendado
Clasificación