-1

我用谷歌搜索了很多,什么也没找到!有人可以帮我从用户输入中填充一系列字符吗?

4

9 回答 9

7

我用谷歌搜索了很多,什么也没找到!有人可以帮我从用户输入中填充一系列字符吗?

我的谷歌说,试试这个..

选项1 :

    import java.io.*;
   class array {

    public static void main(String args[]) throws IOException {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        String tmp = br.readLine();
        int length = tmp.length();
        char c[] = new char[length];
        tmp.getChars(0, length, c, 0);
        CharArrayReader input1 = new CharArrayReader(c);
        int i;
        System.out.print("input1 is:");
        while ((i = input1.read()) != -1) {
            System.out.print((char) i);
        }

    }
}

选项 2:

class array
{
    public static void main(String args[])
    {
        Scanner sc=new Scanner(System.in);
        System.out.println("Please enter elements...");
        char[] a=sc.next().toCharArray();
        System.out.println("Array elements are : ");
        for (int i=0;i<a.length;i++)
            System.out.println(a[i]);
    }
}

但是,在这种情况下,它不会接受空格字符之后。

在开始使用 Java 编码之前,您必须了解以下术语:

缓冲阅读器

异常处理

于 2012-12-14T12:21:26.167 回答
1

//更多乐趣 ...............

public class test3 {

    public static void main(String args[])
    {
        char crr[]=new char[100];
        Scanner inputs=new Scanner(System.in);
        System.out.println("enter the string");
        for(int i=0;i<10;i++)
        {
            char c=inputs.next().charAt(0);
            crr[i]= c;
        }
        for(int i=0;i<10;i++)
        {
            System.out.println(" " +crr[i]);
        }
    }
}
于 2016-08-19T10:11:07.033 回答
0

如果您希望能够阅读一个单词并将其拆分为可以使用的字符数组。

char[] chars = scanner.next().toCharArray();
于 2012-12-14T12:50:35.997 回答
0
   /* program below takes an string from user, splits into character and display as array of characters. */  

     package com.demo.mum;

        import java.io.BufferedReader;
        import java.io.IOException;
        import java.io.InputStreamReader;

        /**
         * @author cyruses
         * 
         */

        public class CharacterArray {

            public static void main(String args[]) throws IOException {
                BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
                System.out.println("Enter the string:");
                String tmp = br.readLine();
                int strLen = tmp.length();
                char c[] = new char[strLen];
                for (int i = 0; i < c.length; i++) {
                    c[i] = tmp.charAt(i);
                }
                System.out.println("Displaying character Array");
                for (int i = 0; i < c.length; i++) {
                    System.out.println(c[i]);
                }
        }
于 2014-04-29T05:47:43.633 回答
0

这段代码是我的线性搜索程序的一部分,我解决了我面临的问题。但我想解释为什么我在 charAt(x) 上而不是在 charAt(0) 上出现异常。

        System.out.println("Enter Your Data in character");
        for(x=0;x<char_array.length;x++)
        {
        Scanner input_list_char = new Scanner(System.in);
        char_array[x]=input_list_char.next().charAt(0); //it works
        char_array[x]=input_list_char.next().charAt(x); // give me exception

}

于 2016-01-26T11:07:33.443 回答
0

从用户输入字符数组

import java.io.*;
class CharArrayInput {

public static void main(String args[]) throws IOException {

    /*using InputReader and BufferedReader class 
      to fill array of characters from user input.
    */
    InputStreamReader ir = new InputStreamReader(System.in);
    BufferedReader br = new BufferedReader(ir);
    //Take size of array from user.
    System.out.println("Please enter size of array")
    int n = Integer.parseInt(br.readLine());
    //Declare a character array
    char arr[] = new char[n];
    //loop to take input of array elements
    for(int i=0; i < n; i++){
    arr[i] = (char)br.read();
    }   

   }
  }
于 2016-07-26T21:05:13.597 回答
0

您不能使用 nextChar() 直接在 charArray 中输入,因为 Java 中没有 nextChar()。您首先必须在 String 中输入,然后一个一个地获取字符。

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

    char ch[]=new char[11];

    String s = scan.nextLine();

    for(int i=0;i<=10;i++)  
    ch[i]=s.charAt(i);  //Input in CharArray

    System.out.println("Output of CharArray: ");
        for(int i=0;i<=10;i++) 
        System.out.print(ch[i]); //Output of CharArray
    }
}
于 2019-10-22T16:37:04.893 回答
0

如果用户以字符串的形式打印输入,这将不起作用,例如...

5 8
########
#..#...#
####.#.#
#..#...#
########

在这种情况下,如果我们使用char c=inputs.next().charAt(0);它只会占用每个字符串的第一个,

使用会更好

    *Scanner s = new Scanner(System.in);
    int n = s.nextInt();
    int m = s.nextInt();
    char[][] in = new char[m+1][n+1];
    for(int i = 0;i<n;i++) {
        String st = s.next();
        for(int j = 0;j<m;j++) {
            in[i][j] = st.charAt(j);
        }
    }*
于 2021-02-02T12:34:38.540 回答
0
    class charinarray
    {
    public static void main(String args[])
    {
    Scanner input=new Scanner(System.in);
    System.out.println("Please enter char elements...");
    char[] a=input.next().toCharArray();
    System.out.println("Array char elements are : ");
    for (int i=0;i<a.length;i++)
    {
        System.out.println(a[i]);
    }
    }
    }
于 2021-11-05T06:09:29.373 回答