A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 王宝龙 中级黑马   /  2012-9-6 12:41  /  1694 人查看  /  6 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 王宝龙 于 2012-9-9 23:28 编辑

1、这个程序我必须输入时每个数字之间必须有空格才行,
    我要输入:1 2 3 4(注意我这里每个数字之间都有个空格)
    得出来的数组a的内容才为{1,2,3,4}
假如我连续的输入1234(里面没有空格的)
我要程序每次只读取一个数字的得出的数组为:{1,2,3,4}
我应该怎么做?
  1. import java.util.*;
  2. class InputDemo
  3. {
  4.         public static void main(String [] arge)
  5.         {
  6.                 int[][] a = new int[2][2];
  7.                 int i;
  8.                 int j;
  9.                 Scanner in = new Scanner(System.in);
  10.                 for(i=0;i<2;i++)
  11.                         for(j=0;j<2;j++)
  12.                         {
  13.                                 a[i][j] = in.nextInt();
  14.                         }
  15.                 for(i=0;i<2;i++)
  16.                         for(j=0;j<2;j++)
  17.                         {
  18.                                 System.out.println(a[i][j]);
  19.                         }

  20.         }
  21. }
复制代码

6 个回复

倒序浏览
试试char[][];
回复 使用道具 举报
本帖最后由 武庆东 于 2012-9-6 13:04 编辑

import java.util.*;
class InputDemo
{
        public static void main(String [] arge)
        {
                int[][] a = new int[2][2];
                int i;
                int j;
                Scanner in = new Scanner(System.in);
               /* for(i=0;i<2;i++)
                        for(j=0;j<2;j++)
                        {
                                a[j] = in.nextInt();
                        }
                for(i=0;i<2;i++)
                        for(j=0;j<2;j++)
                        {
                                System.out.println(a[j]);
                        }

             */
//k可改为如下代码:
String s=in.next();
char[] c=s.toCharArray();
for(int i=0;i<c.length;i++)
  {
   System.out.println(c);
}


        }
}
回复 使用道具 举报
楼主用我这个吧,
import java.io.*;
import java.util.*;

public class SystemInDemo {
        public static void main(String[] args) throws IOException{
                BufferedReader bufr = new BufferedReader(new InputStreamReader(System.in));
                String line = null;
                while((line=bufr.readLine()) != null){
                        if("over".equals(line))
                                break;
                        char[] ch = line.toCharArray();
                        Character[] ch1 = new Character[ch.length];
                        for(int i=0;i<ch.length;i++){
                                ch1[i]=Character.valueOf(ch[i]);
                        }
                        List<Character> list = Arrays.asList(ch1);
                        System.out.println(list);
                }
                bufr.close();
        }
}
回复 使用道具 举报

//scanner是一个可以使用正则表达式来解析基本类型和字符串的简单文本扫描器。      
// 使用分隔符模式将其输入分解为标记,默认情况下该分隔符模式与空白匹配。
//所以你在输入数字时,必须要加上空格。
//要修改分割符的话,就要修改pattern,比较麻烦,这里完全可以用更简单的方式实现。
  1. import java.io.BufferedReader;
  2. import java.io.IOException;
  3. import java.io.InputStreamReader;
  4. class InputDemo
  5. {
  6.         public static void main(String [] arge) throws IOException
  7.         {//用流来接受输入的字符串。
  8.                 BufferedReader br = new BufferedReader(
  9.                                 new InputStreamReader(System.in));
  10. //读一行字符串到str,并转换为char数组
  11.                 String str = br.readLine();
  12.                 char[] arr = str.toCharArray();
  13.                 //打印即可。
  14.                 System.out.print("{");
  15.                 for(int i=0;i<arr.length;i++)
  16.                        System.out.print(arr[i]+",");
  17.                 System.out.println("}");
  18.         }      
  19. }
复制代码
结果:输入1234,输出:{1,2,3,4,}
回复 使用道具 举报
问题已解决 !
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马