我的编程空间,编程开发者的网络收藏夹
学习永远不晚

java中Scanner输入用法实例

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

java中Scanner输入用法实例

因为涉及到 io 流输入问题,如果不关闭会一直占用资源。所以使用过后要及时关闭,防止资源一直被占用。

Scanner在使用前要导入 java.util.Scanner 包

1.整数

描述:
输入一个整数,输出这个整数。
输入描述:
输入一个整数,范围在32位有符号整数范围内
输出描述:
输出这个整数

代码

nextInt() 方法是将输入信息的下一个标记扫描为一个 int。
hasNext()如果此扫描器的输入中有另一个标记,则返回 true。在等待要扫描的输入时,此方法可能阻塞。扫描器将不执行任何输入。 如果仍有元素可以迭代,则返回 true。

import java.util.Scanner;
public class Main{
    public static void main(String[] args){
       // System.out.println("请输入一个整数");
        Scanner sc = new Scanner(System.in);
        int nume = sc.nextInt();
        System.out.println(nume);
    }
}

代码优化:

import java.util.Scanner;
public class Main{
    public static void main(String[] args){
       // System.out.println("请输入一个整数");
        Scanner sc = new Scanner(System.in);
        if(sc.hasNext()){
            int nume = sc.nextInt(); 
            System.out.println(nume);
        }
        sc.close();
       
    }
}

2.浮点数

描述
输入一个浮点数,输出这个浮点数。
输入描述:
输入一个浮点数
输出描述:
输出一个浮点数,保留三位小数

代码

%.3f 浮点型输出,保留三位小数
nextFloat() 将输入信息的下一个标记扫描为一个 float。

import java.util.Scanner;
public class Main{
    public static void main(String[] args){
        Scanner sc = new Scanner(System.in);
        if(sc.hasNext()){
            float nume = sc.nextFloat(); 
             //如何限制float的位数,String类中的format方法可以解决这个问题
            System.out.println(String.format("%.3f",nume));
        }
        sc.close();
    }
}

3.字符

描述
输入一个字符,输出这个字符。
输入描述:
输入一个字符,范围在ascii范围内
输出描述:
输出这个字符

代码

import java.util.Scanner;
public class Main{
    public static void main(String[] args){
        Scanner sc = new Scanner(System.in);
        if(sc.hasNext()){
            String in = sc.nextLine();
            System.out.println(in);
        }
        sc.close();      
    }
}

4.输入两个整数

描述
从键盘上输入三个整数,并尝试在屏幕上显示第二个整数。
输入描述
一行输入 3 个整数,用空格隔开。
输出描述:
请输出第二个整数的值。

代码

import java.util.Scanner;
public class Main{
    public static void main(String[] args){
        Scanner sc = new Scanner(System.in);
        int[] arr=new int[3];
        if(sc.hasNext()){
             for(int i = 0; i < 3; i++){
                 arr[i] = sc.nextInt();
              }
             System.out.println(arr[1]);
        }
        sc.close();
    }
}

5.字符矩阵

描述
用键盘读入一个字符,然后在屏幕上显示用这个字符组成的 33 的矩形。
输入描述:
一行读入一个 char 类型的字符。
输出描述:
输出这个字符组成的 33 矩形。

代码

import java.util.Scanner;
public class Main {
    public static void main(String[] args){
        Scanner sc = new Scanner(System.in);
        //输入单字符,sc.next().charAt(0);
          
        if(sc.hasNext()){
              char in = sc.next().charAt(0);  
            for(int i = 0 ; i < 3 ; i++){
                 for(int j = 0 ; j < 3 ; j++){
                    System.out.print(in);
                }
                System.out.println();
             }
        }
        sc.close();
    }
}

6.字符菱形

描述
牛用键盘读入一个字符,然后在屏幕上显示一个用这个字符填充的对角线长5个字符,倾斜放置的菱形。
输入描述:
输入一个char类型字符
输出描述
输出一个用这个字符填充的对角线长5个字符,倾斜放置的菱形

代码

import java.util.Scanner;
public class Main{
    public static void main(String[] args){
        Scanner sc = new Scanner(System.in);
        char in = sc.next().charAt(0);
        //上部分的行数,包括对角线
        int n = 3;
        //循环输出前半部分
        for(int i = 1 ; i <= n; i++){
            //输出每行前面的空格,并逐级减少,第一行两个,第二行一个,第三行0个
            for(int j = 1; j <= n - i; j++){
                System.out.print(" ");
            }
            //每行输出的字符个数是改行的2倍健1,2*i-1
            for(int j = 1; j <= 2 * i - 1;j++){
                System.out.print(in);
            }
            //每行的结尾要换行
            System.out.println();
        }
        
        //循环输出后半部分
        int m = n - 1;//后半部分的行数是前半部分行数减1,m=2
        for(int i = 1; i <= m; i++){
            //i=1时,是第四行,打印1个空格,3个字符
            //i=2时,是第五行,打印0个空格,1字符个
            //输出空格
            for(int j = 1; j <= i; j++){
                System.out.print(" ");
            }
            for(int j = 1; j <= 2*(m-i)+1 ; j++){
                System.out.print(in);
            }
            System.out.println();
        }
    }
}

7.字符转 ASCII 码

描述
输入一个字符,输出该字符相应的ASCII码。
输入描述:
一行,一个字符。
输出描述:
一行,输出输入字符对应的ASCII码。

代码

import java.util.Scanner;
public class Main{
    public static void main(String[] args){
        Scanner sc = new Scanner(System.in);
        if(sc.hasNext()){
            char in = sc.next().charAt(0);
            System.out.println((int)in);
        }
        sc.close();
    }
}

8.实现四舍五入

描述
将浮点数转换为整数类型,要求四舍五入。
输入描述:
随机输入的浮点数
输出描述:
四舍五入之后的整数

代码

round(float a)
返回最接近参数的 int。

import java.util.Scanner;
public class Main {
    public static void main(String[] args){
        Scanner sc = new Scanner(System.in);
        if(sc.hasNextDouble()){
            double in = sc.nextDouble();
            System.out.println(Math.round(in));
        }
        sc.close();
    }
}

9.成绩输入输出

描述
输入3科成绩,然后把三科成绩输出,成绩为整数形式。
输入描述:
一行,3科成绩,用空格分隔,范围(0~100)。
输出描述:
一行,把3科成绩显示出来,输出格式详见输出样

代码

import java.util.Scanner;
public class Main {
    public static void main(String[] args){
        Scanner sc = new Scanner(System.in);
        int[] arr = new int[3];
        if(sc.hasNext()){
            for(int i = 0; i < arr.length; i++){
                arr[i] = sc.nextInt(); 
            } System.out.println("score1="+arr[0]+",score2="+arr[1]+",score3="+arr[2]);
        } 
        sc.close();
    }         
}

10.学生基本信息输入输出

描述
依次输入一个学生的学号,以及3科(C语言,数学,英语)成绩,在屏幕上输出该学生的学号,3科成绩(注:输出成绩时需进行四舍五入且保留2位小数)。
数据范围:学号满足 1<= n <=20000000 ,各科成绩使用百分制,且不可能出现负数
输入描述:
学号以及3科成绩,学号和成绩之间用英文分号隔开,成绩之间用英文逗号隔开。
输出描述:
学号,3科成绩,输出格式详见输出样例。

代码

import java.util.Scanner;
public class Main{
    public static void main(String[] args){
        Scanner in = new Scanner(System.in);
        String nume = in.nextLine();
        String[] id = nume.split(";");
        String score = id[1];
        String[] scores = score.split(",");
        System.out.print("The each subject score of No. "+Integer.parseInt(id[0])+
                         " is " + String.format("%.2f",Float.parseFloat(scores[0]))+
                         ", " + String.format("%.2f",Float.parseFloat(scores[1])) +
                         ", " + String.format("%.2f",Float.parseFloat(scores[2])) +
                         "."
                        );
        in.close();
    }
}

11.按照格式输入并交换输出

描述
输入两个整数,范围-2的31次方~2的31次方-1,交换两个数并输出。
输入描述
输入只有一行,按照格式输入两个整数,范围,中间用“,”分隔。
输出描述:
把两个整数按格式输出,中间用“,”分隔。

代码

nextLine() 接收 String 类型的输入

import java.util.Scanner;
public class Main {
    public static void main(String[] args){
        Scanner sc = new Scanner(System.in);
        String twoNums = sc.nextLine();
        String[] nums = twoNums.split(",");
        System.out.println(nums[0].substring(0,2) + nums[1].substring(2) + ","
                           + nums[1].substring(0,2) + nums[0].substring(2));
        sc.close();
    }    
}

12.大小写转换

描述
实现字母的大小写转换。多组输入输出。
输入描述:
多组输入,每一行输入大写字母。
输出描述:
针对每组输入输出对应的小写字母

代码

public class Main {
    public static void main(String[] args){
        Scanner sc = new Scanner(System.in);  
        while(sc.hasNext()){//表示是否有输入数据
            char num = sc.next().charAt(0);
            System.out.println((char)(num+32));
        }
    }   
}

总结

到此这篇关于java中Scanner输入用法的文章就介绍到这了,更多相关java Scanner输入内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

java中Scanner输入用法实例

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

Java中Scanner用法实例解析

Scanner 指的是java.util包下的Scanner类,可以接收控制台输入的数据,下面这篇文章主要给大家介绍了关于Java中Scanner用法实例的相关资料,文中通过实例代码以及图文介绍的非常详细,需要的朋友可以参考下
2022-11-13

java中scanner输入异常如何解决

在Java中,Scanner类可以用来获取用户的输入。当用户的输入与程序期望的类型不符合时,会抛出输入异常。为了解决这个问题,可以使用异常处理机制来捕获并处理异常。下面是一个示例代码,演示如何处理Scanner输入异常:javaimport
2023-10-18

Java控制台输入scanner的方法及代码详解

在本篇内容里小编给大家分享的是一篇关于Java控制台输入scanner的方法及实例代码,有需要的朋友们可以参考下。
2022-11-13

Java算法题输入问题实例分析

本篇内容介绍了“Java算法题输入问题实例分析”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!1.给定范围,确定输入几个数据直接使用普通的Sc
2023-06-29

Java中输入/输出流体系的示例分析

这篇文章主要介绍Java中输入/输出流体系的示例分析,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!Java输入/输出流体系1.字节流和字符流字节流:按字节读取。字符流:按字符读取。字符流读取方便,字节流功能强大,当不
2023-05-30

Java IO中字节输入输出流的示例分析

这篇文章主要介绍Java IO中字节输入输出流的示例分析,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!讲的是字节输入输出流:InputStream、OutputSteam(下图红色长方形框内),红色椭圆框内是其典型实
2023-06-26

怎么使用Java Scanner对象中hasNext()与next()方法

本篇内容介绍了“怎么使用Java Scanner对象中hasNext()与next()方法”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!Sc
2023-06-25

HTML表单输入方法实例分析

今天小编给大家分享一下HTML表单输入方法实例分析的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。HTML 表单表单是一个包含
2023-06-27

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录