【Java开发指南 | 第二十篇】Java流之控制台

读者可订阅专栏:Java开发指南 |【优快云@秋说】

在这里插入图片描述

Java流

Java 中的流(Stream)是 Java 8 引入的用于处理数据集合的一种新方式。它是一种声明式编程风格,可以帮助我们处理集合、数组等数据结构,而无需明确地编写迭代或操作步骤。流提供了许多功能,包括过滤、映射、规约、分组等,可以大大简化代码,使其更易读且易于并行化。

Java流之控制台

读取控制台输入-字符

在 Java 中,控制台输入通常由 System.in 实现。要从控制台读取输入,我们需要将 System.in 包装在一个 BufferedReader 对象中,以便创建一个字符流。

创建 BufferedReader 的基本语法如下:

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

一旦创建了 BufferedReader 对象,我们就可以使用 read() 方法来从控制台读取一个字符,或者使用 readLine() 方法来读取一个字符串。

Codeint read() throws IOException

每次调用 read() 方法,它都会从输入流中读取一个字符,并将该字符作为整数值返回。当流结束时,返回 -1。该方法可能会抛出 IOException 异常。

示例如下:

import java.io.*;

public class Ice {
    public static void main(String args[]) {
        char c;
        BufferedReader a = new BufferedReader(new InputStreamReader(System.in));

        try {
            do {
                c = (char) a.read();
                System.out.println(c);
            } while (c != 'I');
        } catch (IOException e) {
            e.printStackTrace();
        } finally {
            try {
                // 关闭输入流
                a.close();
            } catch (IOException e) {
                e.printStackTrace();
            }
        }
    }
}
//用 read() 方法从控制台不断读取字符直到用户输入I

在这里插入图片描述

那么,如果我们想要读取字符串呢?

读取控制台输入-字符串

从标准输入读取一个字符串需要使用 BufferedReader 的 readLine() 方法。

语法格式:

String readLine( ) throws IOException

示例如下:

import java.io.*;

public class Ice {
    public static void main(String args[]) {
        String c;
        BufferedReader a = new BufferedReader(new InputStreamReader(System.in));

        try {
            do {
                c=a.readLine();
                System.out.println(c);
            } while (!c.equals("end"));
        } catch (IOException e) {
            e.printStackTrace();
        } finally {
            try {
                // 关闭输入流
                a.close();
            } catch (IOException e) {
                e.printStackTrace();
            }
        }
    }
}
//读取和显示字符行直到输入的字符串为end

在这里插入图片描述

实现控制台输出-字符

Java 中控制台输出有两种常用的方法:printlnwrite

1、println 方法会输出指定的内容,并在最后添加换行符,使得下一个输出从新的一行开始。

2、write 方法用于将单个字符写入输出流,它不会自动添加换行符,所以需要手动添加换行符或者在下一次输出之前加上 println 方法来换行。

import java.io.*;

public class Ice {
    public static void main(String args[]) {
    	char c='#';
    	System.out.println(c);
    	System.out.write(c);
    	System.out.write('\n');
    }
}

在这里插入图片描述

实现控制台输出-字符串

要输出字符串,仍然可以使用 System.out.println() 方法。

public class Ice {
    public static void main(String args[]) {
    	String c="I am a writer.";
    	System.out.println(c);
    }
}

在这里插入图片描述

实现控制台输入输出

将上面的方法结合,即可实现控制台输入输出。示例如下:

import java.io.*;

public class Ice {
    public static void main(String args[]) {
        String c=null;
        BufferedReader a = new BufferedReader(new InputStreamReader(System.in));
        
        try
        {
        	c=a.readLine();
        }catch(IOException e)
        {
        	e.printStackTrace();
        }
        
        System.out.println(c);
        }
    }

在这里插入图片描述

注意:print 方法不会在输出内容之后自动换行,如果需要输出下一个内容,会继续在同一行输出。

println 方法与 print 方法类似,也是将指定内容输出到控制台,但在输出内容之后会自动换行。

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

秋说

感谢打赏

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值