Java——输入输出及实践

简介: Java——输入输出及实践

一、输出

       【基本语法】

System.out.println(msg);            // 输出一个字符串, 带换行
System.out.print(msg);              // 输出一个字符串, 不带换行
System.out.printf(format, msg);     // 格式化输出

       println 输出的内容自带 \n, print不带 \n

       printf 的格式化输出方式和 C 语言的 printf 是基本一致的

       【代码示例】

System.out.println("hello world");
 
int x = 10;
 System.out.printf("x = %d\n", x);

       【格式化字符串】

       这个表格没必要记住, 用到的时候根据需要查一下就行了。

二、输入

       【语法格式】

       使用 Scanner 读取字符串/整数/浮点数

import java.util.Scanner;  // 需要导入 util 包
 
Scanner sc = new Scanner(System.in);
 System.out.println("请输入你的姓名:");
 String name = sc.nextLine();
 System.out.println("请输入你的年龄:");
 int age = sc.nextInt();
 System.out.println("请输入你的工资:");
 float salary = sc.nextFloat();
 System.out.println("你的信息如下:");
 System.out.println("姓名: "+name+"\n"+"年龄:"+age+"\n"+"工资:"+salary);
 sc.close(); // 注意, 要记得调用关闭方法
 
// 执行结果
请输入你的姓名:
张三
请输入你的年龄:
18
请输入你的工资:
1000
你的信息如下:
姓名: 张三
年龄:18
工资:1000.

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

 Scanner sc = new Scanner(System.in);
 int sum = 0;
 int num = 0;
 while (sc.hasNextInt()) {
    int tmp = sc.nextInt();
    sum += tmp;
    num++;
 }
 System.out.println("sum = " + sum);
 System.out.println("avg = " + sum / num);
 sc.close();
 
// 执行结果
10
 40.0
 50.5
 ^Z
 sum = 150.5
 avg = 30.1

       【注意事项】

                当循环输入多个数据的时候, 使用 ctrl + z 来结束输入 (Windows 上使用 ctrl + z, Linux / Mac 上使用 ctrl + d)

三、实践——猜数字游戏

       有了以上和之前的知识支撑,咱们一起来搞一下猜数字游戏吧!

       【游戏规则】

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

       【参考代码】

 import java.util.Random;
 import java.util.Scanner;;
 
class Test {
    public static void main(String[] args) {
        Random random = new Random(); // 默认随机种子是系统时间
        Scanner sc = new Scanner(System.in);
        int toGuess = random.nextInt(100);
        // System.out.println("toGuess: " + toGuess);
        while (true) {
            System.out.println("请输入要输入的数字: (1-100)");
            int num = sc.nextInt();
            if (num < toGuess) {
                System.out.println("低了");
            } else if (num > toGuess) {
                System.out.println("高了");
            } else {
                System.out.println("猜对了");
                break;
            }
        }
        sc.close();
    }
 }

完!


相关文章
|
17天前
|
监控 算法 Java
Java内存管理:垃圾收集器的工作原理与调优实践
在Java的世界里,内存管理是一块神秘的领域。它像是一位默默无闻的守护者,确保程序顺畅运行而不被无用对象所困扰。本文将带你一探究竟,了解垃圾收集器如何在后台无声地工作,以及如何通过调优来提升系统性能。让我们一起走进Java内存管理的迷宫,寻找提高应用性能的秘诀。
|
18天前
|
存储 监控 Java
Java多线程优化:提高线程池性能的技巧与实践
Java多线程优化:提高线程池性能的技巧与实践
45 1
|
3天前
|
监控 算法 Java
掌握Java的垃圾回收机制:从原理到实践
在Java的世界中,垃圾回收(Garbage Collection,简称GC)是一块神秘的领域,它如同一位默默无闻的清洁工,确保内存中不再使用的对象得到妥善处理。本文将带你走进垃圾回收的大门,探索它的工作原理、常见算法及其在实际应用中的调优策略。无论你是初学者还是有一定经验的开发者,这篇文章都将为你揭开垃圾回收的神秘面纱,让你的Java程序运行得更加高效和稳定。
17 5
|
10天前
|
数据采集 Java 数据挖掘
Java IO异常处理:在Web爬虫开发中的实践
Java IO异常处理:在Web爬虫开发中的实践
|
10天前
|
Java UED 开发者
Java中的异常处理:理解与实践
【9月更文挑战第3天】在Java编程中,异常处理是保持程序健壮性的关键。本文将引导你了解Java的异常机制,从基本的try-catch结构到自定义异常类的创建,以及如何优雅地处理异常情况。我们将一起探讨异常处理的最佳实践,并学习如何在代码中实现它们,以确保你的应用程序能够优雅地处理运行时错误。
12 2
|
15天前
|
Java Devops 持续交付
探索Java中的Lambda表达式:简化代码,提升效率DevOps实践:持续集成与部署的自动化之路
【8月更文挑战第30天】本文深入探讨了Java 8中引入的Lambda表达式如何改变了我们编写和管理代码的方式。通过简化代码结构,提高开发效率,Lambda表达式已成为现代Java开发不可或缺的一部分。文章将通过实际例子展示Lambda表达式的强大功能和优雅用法。
|
14天前
|
Java 调度
Java中的多线程基础与实践
【8月更文挑战第31天】本文将深入浅出地讲解Java中多线程的基础知识,并通过实例展示如何在Java程序中实现多线程。我们将从多线程的基本概念出发,逐步深入到线程的创建、控制以及同步机制,最后通过一个简易版的生产者消费者模型来实践这些知识点。文章旨在帮助初学者快速掌握多线程编程的关键技能,并理解其背后的原理。
|
17天前
|
Java 程序员 编译器
Java编程中的异常处理:理解与实践
【8月更文挑战第28天】在Java的世界中,异常是程序运行中不可避免的一部分。它们像是旅途中的路障,挑战着程序员的智慧和耐心。本文将带你走进Java的异常处理机制,从基础概念到高级应用,我们将一起探索如何优雅地处理这些不请自来的挑战者。你将学习到如何捕获、处理以及预防异常,确保你的代码像经验丰富的旅行者一样,即使在最崎岖的道路上也能从容前行。
|
18天前
|
机器学习/深度学习 人工智能 算法
探索人工智能在医疗诊断中的应用与挑战Java编程中的对象和类:基础与实践
【8月更文挑战第27天】随着人工智能(AI)技术的飞速发展,其在医疗领域的应用日益广泛。本文深入探讨了AI技术在医疗诊断中的具体应用案例,包括图像识别、疾病预测和药物研发等方面,并分析了当前面临的主要挑战,如数据隐私、算法偏见和法规限制等。文章旨在为读者提供一个全面的视角,理解AI在改善医疗服务质量方面的潜力及其局限性。
|
4天前
|
Java 数据库连接 开发者
Java中的异常处理:理解与实践
【9月更文挑战第9天】在Java编程的海洋里,异常处理是一艘不可或缺的救生艇。它不仅保护你的代码免受意外错误的侵袭,还能确保你的应用在遇到困难时能优雅地继续航行。本文将带你深入了解Java的异常处理机制,通过浅显易懂的方式,让你掌握如何捕捉和处理异常,以及如何自定义异常类型来应对特定的业务需求。无论你是Java新手还是资深开发者,这篇文章都将为你提供宝贵的知识和技巧,让你的代码更加健壮和可靠。