【JAVA】Java输入输出

文章目录

    • @[TOC](文章目录)
  • 前言
  • 一、程序输出?
  • 二、程序输入
    • 1、从键盘输入
    • 2、多组输入
    • 3、猜数字游戏
  • 总结

前言

提示:这里可以添加本文要记录的大概内容:
在Java编程中,输入输出是程序与用户交互的核心桥梁,决定了数据如何流动、结果如何呈现。从控制台的简单信息录入到复杂应用的数据处理,输入输出机制贯穿始终。通过System类的标准流、Scanner的便捷读取,或BufferedReader的高效操作,开发者能够灵活应对不同场景的需求。然而,输入输出的细节中暗藏“陷阱”——如类型匹配错误、缓冲区残留等问题——稍有不慎便会导致程序崩溃或逻辑异常。本文将系统解析Java输入输出的核心原理与实用技巧,帮助开发者规避常见误区,提升代码健壮性与用户体验,为构建交互式应用(如游戏、工具等)奠定扎实基础。


提示:以下是本篇文章正文内容,下面案例可供参考

一、程序输出?

输出格式:

public class sout {
    public static void main(String[] args) {
        int a=10;
        System.out.println("hhh");
        System.out.print("hhh");
        System.out.println();
        System.out.printf("a = %d",a);
    }
}

注意:

1. println 输出的内容自带\n, print 不带\n
2. printf 的格式化输出方式和C语言的 printf 是基本一致的

二、程序输入

1、从键盘输入

使用Scanner读取字符串/整数/浮点数,使用时需要导入该类(该过程为导包,后续会讲到)

import java.util.Scanner;
public class sout {
    public static void main(String[] args) {
        Scanner scanner=new Scanner(System.in);
        String name=scanner.nextLine();
        int age=scanner.nextInt();
        double money=scanner.nextDouble();
        System.out.println("你的姓名是:"+name);
        System.out.println("年龄:"+age+" 薪资:"+money);
        scanner.close();
    }
}

2、多组输入

使用Scanner循环读取N个数字,并求取其平均值

import java.util.Scanner;

public class sout {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        double sum=0;
        int num=0;
        while(in.hasNextInt()){
            int tmp=in.nextInt();
            sum+=tmp;
            num++;
        }
        System.out.println("sum = "+sum);
        System.out.println("avg = "+sum/num);
        System.out.println(num);
    }
}

注意事项:
当循环输入多个数据的时候,使用ctrl+z来结束输入(Windows上的CMD中使用ctrl+z,Linux/
Mac/IDEA的控制台上使用ctrl+d).在后续oj题当中,遇到IO类型的算法题,有各种循环输入的要

3、猜数字游戏

系统自动生成一个随机整数(1-100),然后由用户输入一个猜测的数字.如果输入的数字比该随机数小
题示"低了",如果输入的数字比该随机数大,提示"大了",如果输入的数字和随机数相等,则提示"猜
对了.

import java.util.Random;
import java.util.Scanner;

public class sout {
    public static void main(String[] args) {
        Scanner in =new Scanner(System.in);
        Random random=new Random();
        int randomNum=random.nextInt(100);
        while(true){
            System.out.println("请输入你要输入的数字:");
            int num=in.nextInt();
            if(num<randomNum){
                System.out.println("猜小了");
            } else if (num>randomNum) {
                System.out.println("猜大了");
            }else{
                System.out.println("猜对了");
                break;
            }
        }
        System.out.println("数字是 :"+randomNum);
    }
}

总结

Java的输入输出机制是程序与外界交互的核心工具,通过System类的标准流、Scanner的便捷解析以及BufferedReader的高效处理,开发者能够灵活适配不同场景的数据流动需求。掌握这些工具的使用逻辑(如正确处理类型匹配、规避缓冲区陷阱)不仅能提升代码的健壮性和执行效率,更能优化用户体验,为开发交互式应用、文件操作及复杂数据流处理奠定坚实基础。理解输入输出的本质,便是打通程序与真实世界对话的关键一步。

你可能感兴趣的:(JavaSE,java,开发语言)