以相反的顺序打印一组单词

时间:2013-11-26 17:49:53

标签: java string reverse

所以我正在为我的CSCI课程做这个任务,我不能把我的大脑包裹起来去做它需要我做的事情。下面是作业的一部分:“提示用户使用Pez颜色/味道,然后将它们存储在阵列或类似阵列的结构中。按相反的顺序分配颜色/味道” 继承了我的代码:

import java.util.Scanner;
import java.util.Arrays;

public class PezDispenser {

public static void main(String[] args){

Scanner input = new Scanner(System.in);
        String col1;
        String col2;
        String col3;
        String col4;
        String col5;
        String col6;
        String col7;
        String col8;
        String col9;
        String col10;

System.out.println("I need ten colors or favors");

        col1 = input.nextInt();
        col2 = input.nextInt();
        col3 = input.nextInt();
        col4 = input.nextInt();
        col5 = input.nextInt();
        col6 = input.nextInt();
        col7 = input.nextInt();
        col8 = input.nextInt();
        col9 = input.nextInt();
        col10 = input.nextInt();

String[] myArray = new String[] {col1 + col2 + col3 + col4 + col5 + col6 + col7 + col8 + col9 + col10}; 


System.out.println("Now to dispense");

System.out.println(myArray.asList.reverse(myArray));
}

}

问题是这只适用于数字,在程序崩溃时输入一个字母。

2 个答案:

答案 0 :(得分:0)

  

问题是这只适用于数字,输入一个字母   使程序崩溃。

当您输入字符串时程序崩溃是因为这一行:

col1 = input.nextInt();
col2 = input.nextInt();
col3 = input.nextInt();
col4 = input.nextInt();
col5 = input.nextInt();
col6 = input.nextInt();
col7 = input.nextInt();
col8 = input.nextInt();
col9 = input.nextInt();
col10 = input.nextInt();

input.nextInt() 只会读取整数。

要阅读strings,您可以使用 next()nextLine()

col1 = input.nextLine();
col2 = input.nextLine();
col3 = input.nextLine();
col4 = input.nextLine();
col5 = input.nextLine();
col6 = input.nextLine();
col7 = input.nextLine();
col8 = input.nextLine();
col9 = input.nextLine();
col10 = input.nextLine();

答案 1 :(得分:0)

input.nextInt()仅适用于整数。因此字符串存在问题。

如果你需要字符串,你可以使用next()或nextLine()(对于nextLine(),必须在每次输入后用新行输入输入。)