如何在运行时输入时创建预定义大小的char数组?

时间:2015-06-09 06:54:44

标签: java arrays

我需要将input1 input2 input3存储在相同大小的char array中。

public static void evalCharArray(int size){

      System.out.println("please enter any three string not exceed than size"+size); 
         Scanner sc=new Scanner(System.in);
         String input1=sc.nextLine();
         String input2=sc.nextLine();
         String input3=sc.nextLine();
        //what i need is-I want to store these input string in three separate charArray of same length(ie of int size)
  }

如果我使用的是input1.toCharArray() input2.toCharArray() input3.toCharArray(),则会根据输入为我提供不同大小的数组。

2 个答案:

答案 0 :(得分:3)

您可以使用System.arraycopy()方法。

您可以使用此示例代码。

public static void main(String[] args) {
    String s = "work";
    char[] arr = new char[10];
    System.arraycopy(s.toCharArray(), 0, arr, 0, s.toCharArray().length );
    System.out.println(arr.length); // prints 10
    System.out.println(arr); // prints work
}

答案 1 :(得分:3)

使用Arrays.copyOf(T[], int)

 char[] input1=Arrays.copyOf(sc.nextLine().toCharArray(), size);
  

使用空值复制指定的数组,截断或填充(如果   必要的)所以副本有指定的长度。