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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 黄敬璇 中级黑马   /  2015-5-1 21:31  /  3858 人查看  /  23 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

怎样从键盘接收一个数组

23 个回复

倒序浏览
System.in就知道这些了
回复 使用道具 举报
可以用循环语句加键盘输入类的构造方法Scanner()来实现。
回复 使用道具 举报
本帖最后由 大西洋 于 2015-5-1 23:55 编辑

这样写,刚写的哦:
  1. import java.util.Scanner;

  2. public class Test04 {
  3.         public static void in(){
  4.                 Scanner scan = new Scanner(System.in);
  5.                 String[] st = new String[5];
  6.                 for (int i = 0; i < st.length; i++) {
  7.                         st[i] = scan.nextLine();
  8.                         System.out.println("您输入的数组是:"+st[i]);
  9.                 }
  10.         }
  11.         public static void main(String[] args) {
  12.                 in();
  13.         }
  14. }
复制代码



回复 使用道具 举报
本帖最后由 大兵在海边 于 2015-5-1 23:55 编辑

不知道类库中有没有对应的方法,但是我现在学到的
  1. import java.util.ArrayList;
  2. import java.util.Arrays;
  3. import java.util.Scanner;

  4. public class Demo {
  5.         public static void main(String[] args) {
  6.                 Scanner sc=new Scanner(System.in);
  7.                 System.out.println("请输入数组(格式:xx,xx,xx,xx):");
  8.                 String str= sc.next();
  9.                 //String str="12,24,245,23,9,865,66,34";
  10.                 String[] s=str.split(",");//使用正则表达式切割字符串,得到一个字符串数组
  11.                
  12.                 ArrayList<Integer> list=new ArrayList<Integer>();//将转化的数字放入集合中操作
  13.                
  14.                 for(int i=0;i<s.length;i++){
  15.                         int n=Integer.parseInt(s[i]);//通过调用Integer的parseInt()方法可以将数字型字符串转化成数字
  16.                         list.add(n);
  17.                 }
  18.                 //System.out.println(list.get(7));
  19.                 //System.out.println(Integer.parseInt(s[6]));
  20.                 Integer[] arr=new Integer[list.size()];
  21.                 list.toArray(arr);
  22.                 System.out.println("排序之后为:");
  23.                 Arrays.sort(arr);
  24.                 System.out.println(arrToString(arr));
  25.                 System.out.println("最大值为:"+arr[arr.length-1]);
  26.                 //System.out.println(arr[7]);
  27.                
  28.         }
  29.         public static String arrToString(Integer[] arr){
  30.                         StringBuilder str=new StringBuilder();
  31.                         str.append("[");
  32.                         for(int i=0;i<arr.length;i++){
  33.                                 if(i==arr.length-1){
  34.                                         str.append(arr[i]).append("]");
  35.                                         break;
  36.                                 }else{
  37.                                         str.append(arr[i]).append(",");
  38.                                 }
  39.                         }
  40.                         return str.toString();
  41.         }
  42. }
复制代码

知识自己写了一个一次录入一个数组的代码,供楼主参考
回复 使用道具 举报
for循环,外加Scanner()
回复 使用道具 举报
大西洋 发表于 2015-5-1 23:48
这样写,刚写的哦:

如果数组的长度不确定,怎么搞?
回复 使用道具 举报
大兵在海边 发表于 2015-5-1 23:53
不知道类库中有没有对应的方法,但是我现在学到的
知识自己写了一个一次录入一个数组的代码,供楼主参考 ...

好厉害呀
回复 使用道具 举报
大西洋 发表于 2015-5-1 23:48
这样写,刚写的哦:

真厉害,写个代码如此轻松
回复 使用道具 举报
下一页5 发表于 2015-5-1 23:02
System.in就知道这些了

来看看大神们给我的回复吧,很有用奥
回复 使用道具 举报
黄敬璇 发表于 2015-5-2 10:07
来看看大神们给我的回复吧,很有用奥

我这不算基础班都没进去嘛,链接的就这多。谅解啊
回复 使用道具 举报
下一页5 发表于 2015-5-2 10:09
我这不算基础班都没进去嘛,链接的就这多。谅解啊

已经很厉害了,加油
回复 使用道具 举报
黄敬璇 发表于 2015-5-2 10:10
已经很厉害了,加油

问个事,你java基础班几期?电环面试好过不?求招
回复 使用道具 举报
因为你进的是基础班,所以老师会问你一些相对非常简单的问题,所以放心好了,你连这个题都懂的,你面试肯定没问题的,放心好了
回复 使用道具 举报
黄敬璇 发表于 2015-5-2 10:06
真厉害,写个代码如此轻松

惭愧,因为写过很多遍了,呵呵。
回复 使用道具 举报
本帖最后由 大西洋 于 2015-5-2 11:06 编辑
爆炸头 发表于 2015-5-2 09:59
如果数组的长度不确定,怎么搞?

那就无需定义数组,直接把键盘输入的字符串 存入list集合就可以了~  输入多长都可以~ :)
回复 使用道具 举报
大西洋 发表于 2015-5-1 23:48
这样写,刚写的哦:

给力,想了好几天了!!!不知道有没有个方法直接搞定
回复 使用道具 举报
建一个空数组。获取每一行的键盘录入存入数组。这样应该可以的。
回复 使用道具 举报
不错.看过,get
回复 使用道具 举报
import java.util.Scanner; Scanner sc = new Scanner(System.in);   int[] num = new int[]; num=sc.nextInt();
回复 使用道具 举报
12下一页
您需要登录后才可以回帖 登录 | 加入黑马