Java学习总结:48(System类对IO的支持)
System类对IO的支持
System类与IO有关的3个对象常量
No. | 常量 | 类型 | 描述 |
---|---|---|---|
1 | public static final PrintStream err | 常量 | 显示器上错误显示 |
2 | public static final PrintStream out | 常量 | 显示器上信息输出 |
3 | public static final IntputStream in | 常量 | 键盘数据输入 |
我们最早使用的"System.out.println()"代码从本质上来讲就是调用了System类中的out常量,由于此常量类型为PrintStream,所以可以继续调用PrintStream类中的print()或println()方法,由此证明,Java的任何输出操作实际上都是IO操作。
错误输出:System.err
System.err是PrintStream类对象,此对象专门负责进行错误信息的输出操作。
例:错误输出
package Project.Study.IOSystem;public class Test1 {public static void main(String[]args){try{Integer.parseInt("abc"); //此处一定会发生异常}catch (Exception e){System.err.println(e); //错误输出}}
}
//结果:
//java.lang.NumberFormatException: For input string: "abc"
System.err与System.out输出的错误信息是有所不同的,System.err是输出不希望用户看见的的异常,System.out是输出希望用户看得到的信息。
信息输出:System.out
例:利用OutputStream实现屏幕输出
package Project.Study.IOSystem;import java.io.OutputStream;public class Test2 {public static void main(String[]args)throws Exception{OutputStream outputStream=System.out; //OutputStream就为屏幕输出outputStream.write("Hello World!!!".getBytes()); //屏幕输出}
}
//结果:
//Hello World!!!
系统输入:System.in
在Java中并没有可以直接使用键盘输入的操作,而要实现此类操作必须采用IO处理的形式完成,操作的核心就是利用System.in(此为InputStream类实例化对象)完成。
例:实现键盘的数据输入
package Project.Study.IOSystem;import java.io.InputStream;public class Test3 {public static void main(String[]args)throws Exception{InputStream inputStream = System.in; //System.in为InputStream类实例byte[]data=new byte[1024]; //开辟空间接收数据System.out.println("请输入数据:");int len=inputStream.read(data); //读取数据并返回长度System.out.println("输入的数据为:"+new String(data,0,len));}
}
//结果:
//请输入数据:
//Hello World!!!
//输入的数据为:Hello World!!!
相关文章:

mac 端口转发方案
mac 端口映射 好坑 osx10.10mac移除了ipfw改用pfpf以前没用过 查文档mac的 pf语法,没有找到。bsd的倒是很全,心喜拿来一试。http://www.openbsd.org/faq/pf/rdr.html 试了bsd的几个example都不行。报语法错误pfctl: Syntax error in config file: pf rul…

2022-2028年中国钢轨探伤车行业市场研究及前瞻分析报告
【报告类型】产业研究 【报告价格】4500起 【出版时间】即时更新(交付时间约3个工作日) 【发布机构】智研瞻产业研究院 【报告格式】PDF版 本报告介绍了中国钢轨探伤车行业市场行业相关概述、中国钢轨探伤车行业市场行业运行环境、分析了中国钢轨探…

Java中的50个关键字
2019独角兽企业重金招聘Python工程师标准>>> Java中的50个关键字 关键字也称为保留字,是指java语言中规定了特定含义的标示符。对于保留字,用户只能按照系统规定的方式使用,不能自行定义。Java中有50个常用关键字: 与数…

javascript保留字
保留字不能被用作变量名或函数名。abstractbooleanbytecharclassconstdebuggerdoubleenumexportextendsfinalfloatgotoimplementsimportintinterfacelongnativepackageprivateprotectedpublicshortstaticsupersynchronizedthrowstransientvolatile注意:如果把关键字…

动画产业基础学习教程 Rad How to Class – Animation Industry Fundamentals
如何分类——动画产业基础 大小解压后:6.2G 含课程素材 1920X1080 mp4 语言:英语中英文字幕(根据原英文字幕机译更准确) 信息: 绘画技巧、解剖学、角色设计、透视和整体讲故事——这门为期6周的课程旨在聚焦于工作室正在寻找什么…

136. 只出现一次的数字(关于异或的使用)
136. 只出现一次的数字 给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素。 说明: 你的算法应该具有线性时间复杂度。 你可以不使用额外空间来实现吗? 示例 1: 输入: [2…

C_str的入门级notes
嗯,受人所托,顺便整理的 英文渣 侵删。 // 注释的部分是解说(废话)和不怎么重(kǎo)要(ch)的 错误请指正 #include <stdio.h> #include <string.h> int main() {char str[] "sstr";// "sstr." s, s, t, r, \0// witho…

2022-2028年中国钢材市场投资分析及前景预测报告(全卷)
【报告类型】产业研究 【报告价格】4500起 【出版时间】即时更新(交付时间约3个工作日) 【发布机构】智研瞻产业研究院 【报告格式】PDF版 本报告介绍了中国钢材行业市场行业相关概述、中国钢材行业市场行业运行环境、分析了中国钢材行业市场行业的…

IOS UITableView详解一数据展示 页面简单实现
为什么80%的码农都做不了架构师?>>> 一 UITableView简介 UITableView用于表格数据展示,是使用频率最高的控件。UITableView继承自UIScrollView,具有UIScrollView的所有特性。 二 UITableView的两种样式 2.1 UITableViewStylePlai…

Bulk_Collect_Performance 比较
上一篇讲到了调用集锦,这篇关注一下性能问题吧。 DECLARECURSOR c_tool_listISSELECT descr d1 FROM hardware;l_descr hardware.descr%type; BEGINOPEN c_tool_list;LOOPFETCH c_tool_list INTO l_descr;EXITWHEN c_tool_list%notfound;END LOOP;CLOSE c_tool_list…

Unity初学Shadergraph创建着色器学习教程
MP4 |视频:h264,1280720 |音频:AAC,44.1 KHz,2 Ch 语言:英语中英文字幕(根据原英文字幕机译更准确) |时长:51节课(4h 44m) |大小解压后:2.55 GB 使用Unity Shadergraph创建游戏资产指南 初学者的Unity Sha…

Linux命令学习总结:hexdump
命令简介: hexdump是Linux下的一个二进制文件查看工具,它可以将二进制文件转换为ASCII、八进制、十进制、十六进制格式进行查看。 指令所在路径:/usr/bin/hexdump 命令语法: hexdump: [-bcCdovx] [-e fmt] [-f fmt_file] [-n leng…

Java学习总结:49(字符缓冲流:BufferedReader)
字符缓冲流:BufferedReader 在开始前先让我们来看一段代码 package Project.Study.IOSystem;import java.io.InputStream;public class Test4 {public static void main(String[]args)throws Exception{InputStream inputStreamSystem.in;StringBuffer bufnew Str…

2022-2028年中国干洗行业市场全景调研与投资前景预测报告
【报告类型】产业研究 【报告价格】4500起 【出版时间】即时更新(交付时间约3个工作日) 【发布机构】智研瞻产业研究院 【报告格式】PDF版 本报告介绍了中国干洗行业市场行业相关概述、中国干洗行业市场行业运行环境、分析了中国干洗行业市场行业的…

成为优秀高级程序员的10个要点(转)
英文原文:10 Steps to become a Senior Software Engineer What 软件工程师的职业生涯要历经以下几个阶段:初级、中级,最后才是高级。这篇文章主要是讲如何通过 10 个步骤助你成为一名高级软件工程师。 Why 得到更多的报酬!因为你…

count http://www.cplusplus.com/reference/algorithm/count/
// count algorithm example#include <iostream>#include <algorithm>#include <vector>using namespace std;//count 他查找一个元素出现的次数int main () {int mycount;// counting elements in array: int myints[] {10,20,30,30,20,10,10,20}; // 8…

Clip Studio Paint 高级着色学习教程
剪辑工作室颜料着色专业指南! A Pro’s Guide to Coloring With Clip Studio Paint! MP4 |视频:h264,1280720 |音频:AAC,44.1 KHz 语言:英语中英文字幕(根据原英文字幕机译更准确)|大小解压后:2.78 GB |时…

Java学习总结:50(扫描流:Scanner)
扫描流:Scanner Scanner类定义在java.util包中,所以此类是一个工具类,利用它可以方便地实现数据的输入操作。 Scanner实现了Iterator(迭代)接口与Closeable接口。 Scanner类中定义的常用方法如下: No.方法类型描述1public Scann…

圣杯和双飞翼布局
//圣杯布局-wrap设置padding/left right加相对定位 <!DOCTYPE html> <html lang"zh-CN"> <html> <meta charset"utf-8"> <meta http-equiv"X-UA-Compatible" content"IEedge,chrome1"/> <title>&…

2022-2028年中国干电池制造行业产销需求与投资预测分析报告
【报告类型】产业研究 【报告价格】4500起 【出版时间】即时更新(交付时间约3个工作日) 【发布机构】智研瞻产业研究院 【报告格式】PDF版 本报告介绍了中国干电池制造行业市场行业相关概述、中国干电池制造行业市场行业运行环境、分析了中国干电池…

JQuery中的事件以及动画
嘿嘿,今天学习了JQuery的事件以及动画,感觉即将学习完JQuery,在回忆起上周学习的JavaScript,感觉好多刚刚学习的知识点都记得模 糊啦,这个是很让失望的,这里只说明了一点,课是听过啦,…

Go 系列教程 —— 20. 并发入门
欢迎来到我们 Golang 系列教程的第 20 篇。 Go 是并发式语言,而不是并行式语言。在讨论 Go 如何处理并发之前,我们必须理解何为并发,以及并发与并行的区别。 并发是什么? 并发是指立即处理多个任务的能力。一个例子就能很好地说明…

Unity创造没有代码的游戏学习教程
流派:电子学习| MP4 |视频:h264,1280720 |音频:AAC,48.0 KHz 语言:英语中英文字幕(根据原英文字幕机译更准确)|大小:17.4 GB |时长:17h 18m 你会学到什么 如何制作游戏 如何在Unity中制作无代码的游戏 如何使用Bolt 在…

Java学习总结:51(对象序列化)
对象序列化 对象序列化的本质实际上就是将内存中所保存的对象数据转换为二进制数据流进行传输的操作。 但并不是所有类的对象都可以直接进行序列化操作,要被序列化的对象所在的类一定要实现java.io.Serializable接口。而且序列化接口里面是没有任何操作方法存在的&…

(九)单片机串行口 内部结构的讲解 01
1、 基本概念 常用于数据通信的传输方式有单工、半双工、全双工和多工方式。 单工方式:数据仅按一个固定方向传送。因而这种传输方式的用途有限,常用于串行口的打印数据传输与简单系统间的数据采集。 半双工方式:数据可实现双向传送&am…

2022-2028年中国改性尼龙行业市场全景评估及产业前景规划报告
【报告类型】产业研究 【报告价格】4500起 【出版时间】即时更新(交付时间约3个工作日) 【发布机构】智研瞻产业研究院 【报告格式】PDF版 本报告介绍了中国改性尼龙行业市场行业相关概述、中国改性尼龙行业市场行业运行环境、分析了中国改性尼龙行…

[原创]Java性能优化权威指南读书思维导图
[原创]Java性能优化权威指南读书思维导图 书名:Java性能优化权威指南 原书名:Java performance 作者: (美)Charlie Hunt Binu John 译者: 柳飞 陆明刚 京东购书地址: http://item.jd.com/11407830.html 介绍&…

【Java】lambda表达式与函数式接口的完美配合
透过现象看本质:它们真正需要的,是一个"函数",是一个告诉它们,根据什么去排序、被触发后执行什么、线程去执行什么任务的"函数"(compare、actionPerformed、run)。在没有计算机的数学时代,逻辑学家Church意识到他需要将一个函数符号化,他使用了希腊字母λ——λ的发音即为lambda。这无疑大大简化了代码,在某些情况下提升了效率——更重要的是,这是大势所趋的"函数式编程"思想的又一次胜利。实际上,lambda表达式的作用域,不是大括号,而是大括号的外围——和。

spring2
bean的scope"singleton":单例(默认)"prototype":一个bean可以对应多个对象实例 获取bean的方法1、ApplicationContext(首选)(1)bean的scope为singleton,实例化ApplicationContext时,bean对象也随之实例化(2)bean的scope为prototype,实例化ApplicationConte…

多线程Volatile关键字
一旦一个共享变量(类的成员变量、类的静态成员变量)被volatile修饰之后,那么就具备了两层语义:1)保证了不同线程对这个变量进行操作时的可见性,即一个线程修改了某个变量的值,这新值对其他线程来说是立即可见的。 强制将对缓存的修改操作(即写操作)立即写入主存;如果是写操作导致其他线程中对应的缓存无效,让其他线程只能从主存中拿刚刚更新的。2)禁止指令重排序。3)volatile只能保证【可见性】、【有序性】,并不能保证【原子性。