【概述】

就目前而言,我们遇到的“输出”无非就是这个比:

System.out.println()

更详细的输入输出会在IO中提到,那么这个笔记就是记录几种常用输入机制

【Scanner输入】

一般而言,在这个阶段的Java编写中,最方便且最好用的方式来获得用户输入,那么该怎么使用呢?

1.import

在文件头,打上

import java.util.Scanner;

这代表了我们使用了Scanner相关的组件

2.正式使用

首先自然是创建实例,刚接触面向对象编程的可能对这个有点蒙,不过这里照做就行了

Scanner sc= new Scanner(System.in);

其中sc可以改为任何你想要的名字,不过sc简单易懂,对吧

这之后我们就可以得到用户的输入了,但这还不够,我们需要变量来储存它:

String a = sc.nextLine();
int a = sc.nextDouble();
float a =sc.nextDouble();
double a = sc.nextDouble();

此外还有hasnextXX系列,(hasNextInt等),其返回值是boolean,用于检测是否有下一个输入的值

除了Scanner以外,还可以利用args[]配合eclipse甚至命令行来进行输入,不常用且负责,这里就不写了

【异常与错误 Exceptions and Errors】

我认为异常和错误不需要理论上的“介绍”,这方面写/错多了自然而然就知道是哪出问题了,实在不行就面向搜索引擎编程

我们可以利用“try——catch”来进行异常的预纠正,处理异常可以使程序更加有鲁棒性,但可能会降低程序的性能

事实上,就完成血液任务而言,大多数情况还是不会触及到try&catch的,一般来说用if+while排除奇奇怪怪的异常就行了(指用户不按要求瞎输入的那种)

try&catch的一般格式如下:

try{
//进行检查的语句
}catch (<预检查的异常类型>){
//进行预修正的操作
//与检查的异常类型如何表达需自行找资料
}finally{
//无论如何都会执行的语句
}

【Java】 6.0 输入,输出和异常处理的更多相关文章

  1. C语言笔记 09_共用体&typedef&输入|输出

    共用体 共用体允许您在相同的内存位置存储不同的数据类型.您可以定义一个带有多成员的共用体,但是任何时候只能有一个成员带有值.共用体提供了一种使用相同的内存位置的有效方式. 定义共用体 为了定义共用体, ...

  2. Java 输入/输出——处理流(BufferedStream、PrintStream、转换流、推回输入流)

    关于使用处理流的优势,归纳起来就是两点:(1)对于开发人员来说,使用处理流进行输入/输出操作更简单:(2)使用处理流执行效率更高. 1.BufferedInputStream/BufferedOutp ...

  3. Java 输入/输出 反射

    Java  输入/输出   反射 输入输出和反射 一.数据流的基本概念 流一般分为 ( Input Stream ) 和输出流 ( Output Stream ) 两类,但这种划分并不是绝对的.比如一 ...

  4. JAVA里面的IO流(一)分类1(字节/字符和输入/输出)

      java.io包中定义了多个流类型(流或抽象类)来实现输入/输出功能:可以从不同的角度对其进行分类: 按数据流的方向不同可以分为输入流和输出流 从文件读数据为输入流:往文件写数据为输出流 按处理数 ...

  5. 第15章-输入/输出 --- 理解Java的IO流

    (一)理解Java的IO流 JAVA的IO流是实现输入/输出的基础,它可以方便地实现数据的输入/输出操作,在Java中把不同的输入/输出(键盘.文件.网络连接等)抽象表述为"流"( ...

  6. Java 输入/输出——重定向标准输入/输出

    在System类中提供了如下三个重定向标准输入/输出方法. static void setErr​(PrintStream err) Reassigns the "standard" ...

  7. 实用的4~20mA输入/0~5V输出的I/V转换电路(转)

    源: 实用的4~20mA输入/0~5V输出的I/V转换电路

  8. Java的输入/输出操作

    Java的输入\输出机制 计算机的基本功能就是通过输入输出设备与外部其他设备尽心数据的交互,从其他设备读入数据叫做输入操作,将计算机内的数据写入到其他设备叫做输出操作.可以向计算机发送数据.又可以接受 ...

  9. 在java程序中,对于数据的输入/输出操作以“流”(stream)方式进行

    在java程序中,对于数据的输入/输出操作以“流”(stream)方式进行

  10. Java输入/输出教程

    Java输入/输出(I/O)处理从源读取数据并将数据写入目标.通常,读取存储在文件中的数据或使用I/O将数据写入到文件中. java.io和java.nio包中包含处理输入/输出的Java类.java ...

随机推荐

  1. how to change sketch language to chinese

    how to change sketch language to Chinese https://www.sketch.com/support/troubleshooting/chinese-loca ...

  2. 纯js日历插件

    成品的效果图 1.HTML文件 <!DOCTYPE html> <html lang="en"> <head> <meta charset ...

  3. Jmeter beanshell编程实例

    1.引言 BeanShell是一种小型的,免费的,可嵌入的符合Java语法规范的源代码解释器,具有对象脚本语言特性. 在Jmeter实践中,由于BeanShell组件较高的自由度,通常被用来处理较为复 ...

  4. SpringCloud之服务网关

    1.zuul 1.1定义 zuul叫路由网关,它包含对请求的路由和过滤的功能. 路由负责将外部的请求转发到具体的微服务实例上,是实现外部访问统一入口的基础.而过滤是负责对请求的处理过程进行干预,是实现 ...

  5. Vue中Jsx的使用

    什么是JSX? JSX就是Javascript和XML结合的一种格式.React发明了JSX,利用HTML语法来创建虚拟DOM.当遇到<,JSX就当HTML解析,遇到{就当JavaScript解 ...

  6. Layui 源码浅读(模块加载原理)

    经典开场 // Layui ;! function (win) { var Lay = function () { this.v = '2.5.5'; }; win.layui = new Lay() ...

  7. GDB调试:从入门到入土

    GDB是类Unix操作糸统下使用命令行调试的调试软件,全名GNU Debugger,在NOI系列竞赛使用的NOI Linux系统中起很大作用(如果不想用毒瘤Guide或直接输出)(XXX为文件名) 1 ...

  8. 剑指 Offer 55 - II. 平衡二叉树 + 平衡二叉树(AVL)的判断

    剑指 Offer 55 - II. 平衡二叉树 Offer_55_2 题目描述 方法一:使用后序遍历+边遍历边判断 package com.walegarrett.offer; /** * @Auth ...

  9. 剑指 Offer 32 - III. 从上到下打印二叉树 III + 双端队列使用 + 蛇形打印层次遍历序列 + 正倒序输出

    剑指 Offer 32 - III. 从上到下打印二叉树 III Offer_32_3 题目详情 题解分析 本题我想的比较复杂,其实题目的要求只是需要遍历的结果逆序和正序交替,这个其实可以使用Coll ...

  10. LeetCode-[list-of-depth-lcci]

    特定深度节点链表-求解每一层二叉树从左到右遍历形成的链表 list-of-depth-lcci 这是关于二叉树的问题,遍历每一层的结点并且存在链表中. 可以采取队列类似于广度优先搜索的方法进行搜索.每 ...