I/O流概述和分类

方法参数

    int deleteBookById(int id);
    //给int 类型的方法传入一个int 类型的参数

方法的参数列表指定要传什么样的信息给方法,在参数列表中必须指定每个所传递对象的类型及名称。

TreeMap:

输入一个字符串 并查看每个字符出现的次数


//输入一个字符串 并查看每个字符出现的次数
public class HashMapDemo {

    public static void main(String[] args) {

        Scanner sc = new Scanner(System.in);
        System.out.println("输入一个字符串");
        String s = sc.nextLine();

        TreeMap<Character, Integer> hm = new TreeMap<Character, Integer>();

        for (int i = 0; i < s.length(); i++) {
            char key = s.charAt(i);

            Integer value = hm.get(key);


            if (value == null) {
                hm.put(key, 1);
            } else {
                value++;
                hm.put(key, value);
            }
        }

        StringBuilder sb = new StringBuilder();
        Set<Character> keySet = hm.keySet();
        for (Character key : keySet) {
            Integer value = hm.get(key);
            sb.append(key).append("(").append(value).append(")");

        }
        String result = sb.toString();

        System.out.println(result);


    }
}

字节流

  • 按照数据的流向:

    • 输入流
    • 输出流
  • 按照数据的类型:

    • 字节流:
    1. InputStream:字节输入流的父类
    2. OutStream:字节输出流的父类
    • 字符流

一般按照数据类型来分,如果通过自带的记事本打开,可以读懂里面的内容,就使用字符流,否则使用字节流。

getbytes:返回字符串对应的字节数组。“aaa”则返回aaa

字节缓冲流:

  • BufferOutputStream:该类实现缓冲输出流,通过设置这样的输出流,应用程序可以向底层输出流写入字节,而不必为每个字节导致底层系统的调用。
  • BufferInputStream:创建 BufferInputStream 将创建一个内部缓冲区数组,当从流中读取或跳过字节时,内部缓冲区将根据需要从所包含的输入流中重新填充,一次很多细节。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值