Java输入输出小结
无论使用哪一种编程语言,输入输出都是我们首当其冲的,因此简单整理了
一下关于Java输入输出知识点,还有些内容摘自其它博客,忘见谅。
第一部分,让我们看一下Java的输出
public class Main{
public static void main(String[] args){
System.out.println("hello_!");
System.out.print("My name is, ");
System.out.print("Sufeng! ");
}
}
System.out.print()用于直接输出;
System.out.println()也是直接输出,不过在结尾换行。
输出方式相对简单,
这种输出方式,是输出到Eclipse的控制台或者直接在命令行显示结果,具体是输出在哪里取决于运行Java程序的IDE环境
第二部分,让我们看一下Java的输入
import java.io.*;
import java.util.*;
public class Main{
public static void main(String[] args)throws IOException{ //抛出异常
char c=(char)System.in.read(); //读取单个字符
System.out.println(c);
}
}
可以看到,
1~2行,导入两个包,分别是 io包和util包;
Java语言定义了许多类专门负责各种方式的输入或者输出,这些类都被放在java.io包中;
有关流的更多概念详解可以看Java流对象理解;
输入第二种方式,
import java.io.*;
import java.util.*;
public class Main{
public static void main(String[] args)throws IOException{
Scanner cin=new Scanner(System.in); int a=cin.nextInt(); //输入一个整数
System.out.println(a); double b=cin.nextDouble(); //输入一个双精度的浮点数
System.out.println(b); String str=cin.next(); //输入一个字符串,遇到分号则输入终止
System.out.println(str); String str2=cin.nextLine();//按行读取
System.out.println(str2);
}
}
输出的第三种方式
import java.io.*;
import java.util.*;
public class Main{
public static void main(String[] args)throws IOException{
BufferedReader cin=new BufferedReader(new InputStreamReader(System.in));
String str=cin.readLine();//输入一行
System.out.println(str); String str2=cin.readLine();
int a=Integer.parseInt(str2);//将str2转换为int,并复制给a
System.out.println(a); String str3=cin.readLine();
double b=Double.parseDouble(str3);//将str3转换为double,并复制给b
System.out.println(b);
}
}
下面时Java实际例子,运行后
import java.io.*;
public class Main {
public static void main(String...strings) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
br.readLine();
String s = br.readLine().trim();
String[] nums = s.split(" ");
int thisSum = 0;
int maxSum = 0;
for(int i = 0; i < nums.length; i++) {
thisSum += Integer.parseInt(nums[i]);
if(thisSum > maxSum)
maxSum = thisSum;
else if(thisSum < 0)
thisSum = 0;
}
System.out.println(maxSum);
}
}
发现
使用Scanner类的对象在读取输入数据方面虽然很方便,但是运行效率低,数据量越大,这种差异越明显,并且它占用的内存空间也大。
而BufferedReader和System.in差别较小,但是BufferedReader在读入数据方面上的处理会稍微简便些。
Java输入输出小结的更多相关文章
- Java中文编码小结
Java中文编码小结 1. 只有 字符到字节 或者 字节到字符 的转换才存在编码转码; 2. Java String 采用 UTF-16 编码方式存储所有字符.unicode体系采用唯一的码点表示唯一 ...
- Java 基础--小结
Java 基础--小结 java基础 Java源程序(.java文件)——>java字节码文件(.class文件)——>由解释执行器(java.exe)将字节码文件加载到java虚拟机( ...
- java 输入输出 io
学习JAVA 输入输出篇 java不像C中拥有scanf这样功能强大的函数,大多是通过定义输入输出流对象.常用的类有BufferedReader,Scanner.实例程序:一,利用 Scanner ...
- Java序列化小结
title: Java序列化小结 date: 2017-05-06 20:07:59 tags: 序列化 categories: Java基础 --- Java序列化就是将一个对象转化成一串二进制表示 ...
- ACM之Java输入输出
本文转自:ACM之Java输入输出 一.Java之ACM注意点 1. 类名称必须采用public class Main方式命名 2. 在有些OJ系统上,即便是输出的末尾多了一个“ ”,程序可能会输出错 ...
- java文本输入输出小结
Java 文本输入主要包含两种方法:FileRead -- 按字符读入,InputSreamReader -- 按行输入. java 文本输出也包含两种方法:FileWriter 和 OuputStr ...
- Java—输入输出技术
在Java中,通过java.io包提供的类来表示流,基本的输入输出流为InputStream和OutputStream.从这两个基本的输入输出流派生出面向特定处理的流,如缓冲区读写流.文件读写流等. ...
- java 输入输出 函数对象构造
/*********************输入输出*******************/ //输入字符串 不包括最后的换行符'\n' import java.io.BufferedRe ...
- java 异常小结
异常大体分为编译异常和运行异常两类,如果用软件开发(如Eclipse)编译异常在写代码时得到提醒, 而运行异常需要在运行时才能得到提示. 算术异常类:ArithmeticExecption 这个异常是 ...
随机推荐
- pandas更换index,column名称
1)仅换掉index名称 df.index = list 2)调整index时,后面的项目也要跟着调整: df.reindex(list) 注意如果list中出现了df中没有的index,后面的项目会 ...
- 架构探险笔记6-ThreadLocal简介
什么是ThreadLocal? ThreadLocal直译为“线程本地”或“本地线程”,如果真的这么认为,那就错了!其实它就是一个容器,用于存放线程的局部变量,应该叫ThreadLocalVariab ...
- 『TensorFlow』分布式训练_其二_单机多GPU并行&GPU模式设定
建议比对『MXNet』第七弹_多GPU并行程序设计 一.tensorflow GPU设置 GPU指定占用 gpu_options = tf.GPUOptions(per_process_gpu_mem ...
- bzoj3876: [Ahoi2014&Jsoi2014]支线剧情
题意:给一幅图,从1开始,每条边有边权最少走一遍,可以在任意点退出,问最小花费 题解:上下界费用流,每个边都流一遍,然后为了保证流量平衡,新建源点汇点,跑费用流把流量平衡 /************* ...
- const constptr 和引用的盲点(未解决)
#include<iostream> //const 和 引用的值必须初始化 //等号左侧是const或者const和引用,右侧可以是数字,普通变量-等号左侧是const和指针,右侧必须是 ...
- leetcode-algorithms-36 Valid Sudoku
leetcode-algorithms-36 Valid Sudoku Determine if a 9x9 Sudoku board is valid. Only the filled cells ...
- using强制对象清理资源 【转】
转 http://www.cnblogs.com/Legolas/p/detail-of-using.html using肯定所有人都用过,最简单的就是使用using引入命名空间,然后就是引入别名,简 ...
- oracle中给表和列起别名
SELECT xxmc,sname as xsxm,sex,phone,address jzdz FROM student s LEFT JOIN xxjbxx x ON x.sid = s.sid ...
- 559. Maximum Depth of N-ary Tree C++N叉树的最大深度
网址:https://leetcode.com/problems/maximum-depth-of-n-ary-tree/ 很简单的深度优先搜索 设定好递归返回的条件和值 /* // Definiti ...
- oracle having字句
现在要求查询出职位的平均每个职位的名称,工资,但是要求显示的职位的平均工资高于2000. 即:按照职位先进行分组,同时统计出每个职位的平均工资 随后要求直显示哪些平均工资高 ...