java实现多个整数任意输入格式(空格、换行等)并将输入的所有整数放入一个整型数组里

写程序时经常遇到整数输入格式的问题
例如:“第一行是一个整数n(1≤n≤26),表示矩阵数目。接着有n行,每行的开头是一个大写字母,是矩阵的名称,然后是两个整数,表示该矩阵的行数与列数。”类似如此。

  1. 遇到这样的问题,可以先定义一个String字符串,将输入的东西放入定义好的字符串里
    String str=scanner.nextLine();

  2. 然后将String字符串转换为字符串数组,并调用split方法除掉整数以外的元素
    String[] temp= str.split(" ");

  3. 定义一个整型数组
    int[] number=new int[temp.length];

  4. 使用循环将字符串数组里的每一个元素利用类型转换放入整型数组里

 for(int i=0;i<number.length;i++)
		{
			number[i]=Integer.parseInt(temp[i]);
		}

这样不仅可以实现整数的任意输入格式,只要替换3、4步骤的数组类型同样可以实现其他类型数组的不同输入格式。
测试结果如下:
在这里插入图片描述
若要实现开头举的例子则还需定义一个数据类,完整代码如下:

import java.util.Scanner;
public class MatrixMultiply {
    public static void main(String[] args) {
        Scanner scanner=new Scanner(System.in);
        String NumberS=scanner.nextLine();
        int Number=Integer.parseInt(NumberS);
        data[] dateTemp=new data[Number];
        for(int i=0;i<Number;i++){
            dateTemp[i]=new data();
            String temp=scanner.nextLine();
            String[] tempArr= temp.split(" ");
            dateTemp[i].setName(tempArr[0]);
            dateTemp[i].setRows(Integer.parseInt(tempArr[1]));
            dateTemp[i].setColumn(Integer.parseInt(tempArr[2]));
        }
        //输出测试
        for(int i=0;i<Number;i++){
            System.out.println(dateTemp[i]);
        }
}
class data{
    private String Name;
    private int Rows;
    private int Column;

    public String getName() {
        return Name;
    }

    public void setName(String name) {
        Name = name;
    }

    public int getRows() {
        return Rows;
    }

    public void setRows(int rows) {
        Rows = rows;
    }

    public int getColumn() {
        return Column;
    }

    public void setColumn(int column) {
        Column = column;
    }

    public String toString(){
        return this.getName()+" "+this.getRows()+" "+this.getColumn();
    }
}

测试结果如下:
在这里插入图片描述

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

阿_巴打

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值