Java OJ常用输入写法

平时如果刷LeetCode刷的比较多,会忘记输入输出怎么写诶
在开学上机考试前特地花1个多小时整理了Java版的输入写法
一.输入一个数、两个数

//一.【一个数、两个数】
        Scanner sc = new Scanner(System.in);

        int m=sc.nextInt();
        int n=sc.nextInt();
        System.out.println("m: "+m);
        System.out.println("n: "+n);

二.每次输入两个数,以EOF结束

//二.【两个数】 以EOF为结尾
        //使用CTRL+Z退出
        while(sc.hasNext()){
            int a=sc.nextInt();
            int b=sc.nextInt();
        }

三.输入字符串

        //三.【输入字符串】
        String s1 = sc.next();
        String s2 = sc.nextLine();
        System.out.println("s1字符串长度"+s1.length());
        System.out.println(s1);
        System.out.println("s2字符串长度"+s2.length());
        System.out.println(s2);
        //【--特殊情况--】
        //单行输入多个参数
        Scanner sc = new Scanner(System.in);
        String str = sc.nextLine();
        String[] s = str.trim().split(" ");
        for(String tmp:s){
            System.out.println(tmp);
        }

四.输入一维数组

//四.【输入数组】
        //4.1[一维数组] 长度是n
        Scanner in = new Scanner(System.in);
        int n=in.nextInt();
        int[] arr = new int[n];
        for(int i=0;i<n;i++){
            arr[i]=in.nextInt();
        }
        for(int i=0;i<n;i++){
            System.out.println(arr[i]);
        }
/*---------输入长度m,n的两个数组---------------*/
        int len1,len2;
        Scanner sc = new Scanner(System.in);
        len1=sc.nextInt();
        len2=sc.nextInt();
        int nums1[]=new int[len1];
        int nums2[]=new int[len2];
        for(int i=0;i<len1;i++){
            nums1[i]=sc.nextInt();
        }
        for(int j=0;j<len2;j++){
            nums2[j]=sc.nextInt();
        }

五.输入二维数组

int类型二维数组

/*-----------输入二维int数组----------------*/
        Scanner sc = new Scanner(System.in);
        int n=sc.nextInt();
        int m=sc.nextInt();
        //必须读取回车符 【很久之前的 吃掉回车符号】
        //sc.nextLine();
        //读入二维数组
        int[][] map = new int[n][m];
        for(int i=0;i<n;i++){
            for(int j=0;j<m;j++){
                map[i][j]=  sc.nextInt();
            }
        }
        for(int i=0;i<n;i++){
            for(int j=0;j<m;j++){
                System.out.print(map[i][j]+" ");
            }
            System.out.println();
        }

char类型二维数组

       
        /*-----------输入二维char数组----------------*/
        Scanner scan = new Scanner(System.in);
        int n = scan.nextInt(); //n行
        int m = scan.nextInt();//m列
        String[]  temp= new String[n+1]; //字符串数组做中间变量
        for(int i = 0; i< n; i++) {
            temp[i] = scan.next();
        }

        char[][] p = new char[n][m];   // temp字符串数组转为二维数组p[n][m];
        for(int i = 0; i<n; i++) {
            for(int j = 0; j< m; j++) {
                p[i][j] = temp[i].charAt(j);
                System.out.println(p[i][j]);
            }
        }
  • 3
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值