Java将控制台输入的一行整数转成整型数组

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接: https://blog.csdn.net/sinat_32336967/article/details/98050303

思路:
将一行数据按字符串的形式读取进来。
首先判断输入的字符串是否是空,为空的话,则不做任何操作。
其次,将字符串按照指定方式切分为字符串数组,此处是按照空格切分,因为输入是按空格区分的。
最后,尝试将字符串数组中的每个字符串利用Integer.parseInt(String s)方法解析到实例化好的整型数组当中。
如果有一个出错,那么就直接返回,不作任何操作。
如果没有出错,在最后输出整型数组的内容。

package org.jinyuxin.a20190731;

import java.util.Scanner;

public class StringLineToIntArr {
  public static void main(String[] args) {
    Scanner sc = new Scanner(System.in);
    System.out.println("请输入一行数字,以空格分开...");
    String line = sc.nextLine();
    parseLineToIntArr(line);
  }

  public static void parseLineToIntArr(String s) {
    //字符串为空,则不作操作
    if (s.isEmpty()) {
      return;
    }
    
    //将字符串按空格切分,转成字符串数组
    String[] strArr = s.split(" ");
    int strArrLen = strArr.length;

    //将字符串数组转成整型数组
    int[] intArr = new int[strArrLen];
    
    //循环遍历字符串数组中的每一个字符串,尝试解析这个字符串到整型数组里。出错的话,就退出
    for (int i = 0; i < strArrLen; i++) {
      //
      try {
        intArr[i] = Integer.parseInt(strArr[i]);
      } catch (NumberFormatException e) {
        e.printStackTrace();
        return;
      }
    }
    //输出转换之后的整型数组
    for (int x : intArr) {
      System.out.println(x);
    }
  }
}

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/sinat_32336967/article/details/98050303