Java中的常用输入输出语句的操作代码

一、概述

输入输出可以说是计算机的基本功能。作为一种语言体系,java中主要按照流(stream)的模式来实现。其中数据的流向是按照计算机的方向确定的,流入计算机的数据流叫做输入流(inputStream),由计算机发出的数据流叫做输出流(outputStream)。

Java语言体系中,对数据流的主要操作都封装在java.io包中,通过java.io包中的类可以实现计算机对数据的输入、输出操作。在编写输入、输出操作代码时,需要用import语句将java.io包导入到应用程序所在的类中,才可以使用java.io中的类和接口。

二、输入语句

1.使用Scanner类:

(1)使用java.util包。 import java.util.*;

(2)构造Scanner类对象,它附属于标准输入流System.in。 Scanner s = new Scanner(System.in);

(3)常用的next()方法系列: nextInt():输入整数 nextLine():输入字符串 nextDouble():输入双精度数 next():输入字符串(以空格作为分隔符)。

import java.util.*;
public class DEMO_1 {
  public static void main(String[] args){
    Scanner s = new Scanner(System.in);
    System.out.print("输入你的姓名:");
    String name = s.nextLine();
    System.out.print("输入你的年龄:");
    int age = s.nextInt();
    System.out.println("姓名:" + name + " 年龄:" + age );
    s.close();     //若没有关闭Scanner对象将会出现警告
  }
}

注释:代码第1行创建了一个Scanner类的对象,这个对象是用来输入的。后面的代码是从控制台的输入中取出一个值,赋值给对应的变量。

2.使用java.io.BufferedReader和java.io.InputStreamReader:

步骤:

(1)使用java.io包。  import java.io.*;

(2)构造 BufferedReader类对象,它附属于标准输入流System.in。

BufferedReader br = new BufferedReader(new InputStreamReader(System.in));

public class Sandbox4 extends Sandbox2{
  public static void main(String[] args) {
    BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
    String str = null;
    while(true){
      try {
        str = br.readLine();
      }catch(IOException e){
        e.printStackTrace();
      }
      if(str.equals("END"))break;
      System.out.print(str);
    }
  }
}

请注意:

(1)read方法:读取单个字符。 返回:作为一个整数(其范围从 0 到 65535 (0x00-0xffff))读入的字符,如果已到达流末尾,则返回 -1 ;

(2)readLine方法:读取一个文本行。通过下列字符之一即可认为某行已终止:换行 ('\n')、回车 ('\r') 或回车后直接跟着换行。 返回:包含该行内容的字符串,不包含任何行终止符,如果已到达流末尾,则返回 null。

3、使用java.io.Console:

public class Sandbox4 extends Sandbox2{
  public static void main(String[] args) {
    Console console = System.console();
    if (console == null) {
      throw new IllegalStateException("Console is not available!");
    }
    String str = null;
    while(true){
      str = console.readLine("请输入");
      if("END".equals(str))break;
      System.out.println(str);
    }
  }
}

输入问题解惑:

注:该问题图片来源于百度知道。

三、输出语句

Java中的输出语句有以下四种:

System.out.println(1111);//换行打印
System.out.print(1111);//不换行打印
System.out.write(2222);//字节输出
System.out.printf("%+8.3f\n", 3.14);//按格式输出

System.out.println();是最常用的输出语句,它会把括号里的内容转换成字符串输出到输出窗口(控制台),并且换行,当输出的是一个基本数据类型时,会自动转换成字符串,如果输出的是一个对象,会自动调用对象的toString();方法,将返回值输出到控制台

System.out.print(); 与第一个很相似,区别就是上一个输出后会换行,而这个命令输出后并不换行。

System.out.printf(); 这个方法延续了C语言的输出方式,通过格式化文本和参数列表输出。

(0)

相关推荐

  • Java的DataInputStream和DataOutputStream数据输入输出流

    DataInputStream  DataInputStream 是数据输入流.它继承于FilterInputStream. DataInputStream 是用来装饰其它输入流,它"允许应用程序以与机器无关方式从底层输入流中读取基本 Java 数据类型".应用程序可以使用DataOutputStream(数据输出流)写入由DataInputStream(数据输入流)读取的数据. DataInputStream 函数列表: DataInputStream(InputStream in)

  • 基于Java文件输入输出流实现文件上传下载功能

    本文为大家分享了Java实现文件上传下载功能的具体代码,供大家参考,具体内容如下 前端通过form表单的enctype属性,将数据传递方式修改为二进制"流"的形式,服务端(servlet)通过  getInputStream() 获取流信息, 运用java I/O 流的基础操作将流写入到一个服务端临时创建的文件temp中,然后再次利用文件基本操作,读取并截取临时文件内容,根据其中信息创建相应的文件,将读取出来的具体信息写入,下载时,根据提交的文件名称,找到服务器端相应的文件,然后根据输

  • Java利用文件输入输出流实现文件夹内所有文件拷贝到另一个文件夹

    一.基本目标 使用Java完成如下的操作: 把一个文件夹内的所有文件拷贝的另一的文件夹,例如,在F盘中有a与b两个文件夹: f:/a里面有一堆文件,运行Java程序之后就会全部复制到f:/b,并且完成重命名,在所有文件之前加rename_的前缀,如果里面有文件夹,则文件夹不重命名,里面的文件进行重命名,同样在所有文件之前加rename_的前缀: 二.制作过程 1.首先主函数非常简单,就是调用了上面FileTest类中的copyFolder函数 public class FileCopy { pu

  • java实现文本框和文本区的输入输出

    在GUI中,常用文本框和文本区实现数据的输入和输出.如果采用文本区输入,通常另设一个数据输入完成按钮.当数据输入结束时,点击这个按钮.事件处理程序利用getText()方法从文本区中读取字符串信息.对于采用文本框作为输入的情况,最后输入的回车符可以激发输入完成事件,通常不用另设按钮.事件处理程序可以利用单词分析器分析出一个个数,再利用字符串转换数值方法,获得输入的数值.对于输出,程序先将数值转换成字符串,然后通过setText()方法将数据输出到文本框或文本区. [例 11-9]小应用程序设置一

  • Java输入输出流的使用详细介绍

    1.什么是IO Java中I/O操作主要是指使用Java进行输入,输出操作. Java所有的I/O机制都是基于数据流进行输入输出,这些数据流表示了字符或者字节数据的流动序列.Java的I/O流提供了读写数据的标准方法.任何Java中表示数据源的对象都会提供以数据流的方式读写它的数据的方法. Java.io是大多数面向数据流的输入/输出类的主要软件包.此外,Java也对块传输提供支持,在核心库 java.nio中采用的便是块IO. 流IO的好处是简单易用,缺点是效率较低.块IO效率很高,但编程比较

  • 详解Java中ByteArray字节数组的输入输出流的用法

    ByteArrayInputStream 介绍 ByteArrayInputStream 是字节数组输入流.它继承于InputStream. 它包含一个内部缓冲区,该缓冲区包含从流中读取的字节:通俗点说,它的内部缓冲区就是一个字节数组,而ByteArrayInputStream本质就是通过字节数组来实现的. 我们都知道,InputStream通过read()向外提供接口,供它们来读取字节数据:而ByteArrayInputStream 的内部额外的定义了一个计数器,它被用来跟踪 read() 方

  • Java中的常用输入输出语句的操作代码

    一.概述 输入输出可以说是计算机的基本功能.作为一种语言体系,java中主要按照流(stream)的模式来实现.其中数据的流向是按照计算机的方向确定的,流入计算机的数据流叫做输入流(inputStream),由计算机发出的数据流叫做输出流(outputStream). Java语言体系中,对数据流的主要操作都封装在java.io包中,通过java.io包中的类可以实现计算机对数据的输入.输出操作.在编写输入.输出操作代码时,需要用import语句将java.io包导入到应用程序所在的类中,才可以

  • Java中保证线程顺序执行的操作代码

    只要了解过多线程,我们就知道线程开始的顺序跟执行的顺序是不一样的.如果只是创建三个线程然后执行,最后的执行顺序是不可预期的.这是因为在创建完线程之后,线程执行的开始时间取决于CPU何时分配时间片,线程可以看成是相对于的主线程的一个异步操作. public class FIFOThreadExample { public synchronized static void foo(String name) { System.out.print(name); } public static void

  • Java 中执行动态表达式语句前中后缀Ognl、SpEL、Groovy、Jexl3

    目录 Ognl.SpEL.Groovy.Jexl3 一.前中后缀简单描述 1.前缀.中缀.后缀表达式(逆波兰表达式) 2.中缀表达式 3.后缀表达式 4.前缀表达式 二.OGNL 三.SpEL 四.Jexl/Jexl3 五.Groovy 六.扩展 Ognl.SpEL.Groovy.Jexl3 在一些规则集或者工作流项目中,经常会遇到动态解析表达式并执行得出结果的功能. 规则引擎是一种嵌入在应用程序中的组件,它可以将业务规则从业务代码中剥离出来,使用预先定义好的语义规范来实现这些剥离出来的业务规则

  • Java中I/O输入输出的深入讲解

    目录 前言 一.流概述 二.输入/输出流 1.输入流 2.输出流 三.File类 1.文件的创建与删除 1.File(String pathname) 2.File(String parent,String child) 3.File(File f,String child) 2.获取文件信息 四.文件输入/输出流 1.FillInputStream与FileOutputStream类 2.FileReader和FileWriter类 五.带缓存的输入/输出流 1.BufferedInputSt

  • 基于Java中最常用的集合类框架之HashMap(详解)

    一.HashMap的概述 HashMap可以说是Java中最常用的集合类框架之一,是Java语言中非常典型的数据结构. HashMap是基于哈希表的Map接口实现的,此实现提供所有可选的映射操作.存储的是对的映射,允许多个null值和一个null键.但此类不保证映射的顺序,特别是它不保证该顺序恒久不变. 除了HashMap是非同步以及允许使用null外,HashMap 类与 Hashtable大致相同. 此实现假定哈希函数将元素适当地分布在各桶之间,可为基本操作(get 和 put)提供稳定的性

  • java中Lambda常用场景代码实例

    本文实例为大家分享了java中Lambda常用场景的具体代码,供大家参考,具体内容如下 public class test18 { /** * lambda表达式的常用场景 */ @Test public void test() { List<String> list_one = new ArrayList<>(); list_one.add("NIKE"); list_one.add("Addidas"); /** * 用在匿名内部类里简写

  • Java中PageHelper分页后对list操作导致分页无效

    1.问题 阿里巴巴Java开发手册 1.1.PageHelper先开启分页,后对list数据操作 @Override public PageInfo<HdQueryVo> getRecordsByView(int pageNo, int pageSize) { PageHelper.startPage(pageNo,pageSize); List<HdQueryVo> hdQueryVosByView = actionMapper.getActionByView(); List&l

  • Java中List常用操作比for循环更优雅的写法示例

    目录 引言 简单遍历 筛选符合某属性条件的List集合 获取某属性返回新的List集合 获取以某属性为key,其他属性或者对应对象为value的Map集合 以某个属性进行分组的Map集合 其他情况 总结 引言 使用JDK1.8之后,大部分list的操作都可以使用lambda表达式去写,可以让代码更简洁,开发更迅速.以下是我在工作中常用的lambda表达式对list的常用操作,喜欢建议收藏. 以用户表为例,用户实体代码如下: public class User { private Integer

  • mybatis源码解读-Java中executor包的语句处理功能

    目录 1.mybatis对多语句类型的支持 2.mybatis的语句处理功能 1.mybatis对多语句类型的支持 在mybatis映射文件中传参数,主要用到#{} 或者 ${}. #{}:表示使用这种符号的变量会以预编译的形式赋值到sql片段中. ${}:表示使用这种符号的变量会以字符串的形式直接插到sql片段中. mybatis中支持三种语句类型,不同语句类型支持的变量符号不同.mybatis的三种类型如下: STATEMENT:这种语句类型中,只会对sql片段进行简单的字符串拼接.只支持使

  • java中的常用集合类整理

    一.Set集合 其主要实现类有HashSet.TreeSet存放对象的引用,不允许有重复对象. 实例代码: public class SetTest { public static void main(String[] args) { Set set=new HashSet(); //添加数据 set.add("abc"); set.add("cba"); set.add("abc");//故意重复 set.add(123); set.add(t

随机推荐