c语言输出行末无空格_Java基础教程,第六讲,格式化输入输出

af74671c93c23b4861fbdad8ab37f25b.png

上一课我们留下一个思考题,StringBuilder效率为什么比String的效率高?

第四讲我们已经说过了,Java中没有内置String类型,而是在Java的类库中提供了一个基类,当直接使用String拼接字符串时,String会先创建一个StringBuilder实例,然后调用append()方法来实现拼接。当拼接较多时,就会产生大量的实例,占用内存,导致效率降低。

ef18cc93d4213be9464845c44a86caeb.png

本机测试当循环10万次,String拼接耗时25秒左右:

415be87a2486b9f0aa45e12dc374ce13.png

而使用StringBuilder拼接字符串时,耗时仅11毫秒:

38c7f22447c82c27128d7265b7886260.png

学完此次课程,我能做什么?

通过本次课程的学习我们可以按照自己的要求来格式化输出和输出。

学习此次课程,需要多久?

5-10分钟

课程内容

输入输出

在前面的Demo中我们已经使用过标准出书流(控制台窗口),只需要调用System.out.println()即可。如果需要获取用户控制台输入则需要使用System.in结合Scanner对象来完成。

b7a4e4e6670c4fb9c7289d8719017846.png

运行结果:

f0f4d6d5b55abbd8db2bba0a720d2b79.png

String next() 读取输入的下一个单词(以空格为分隔符)

int nextInt() 读取下一个int类型数字

double nextDouble() 读取下一个浮点数或者整数(整数会转换为浮点数)

boolean hasNext() 检测输入中是否还有其他单词

boolean hasNextInt() 检测输入中是否有整数

boolean hasNextDouble() 检测是否还有整数或者浮点数

格式化输入输出

为什么要使用格式化输出输出?

顾名思义当我们想把输出的内容,按照我们的想法来格式化,比如我们想控制小数点位数,数字前补0,左对齐,八进制,十六进制等等。

Java中的输入输出格式化沿用了C语言中的printf函数。

下面先看一个入门程序:

f597ced4e8c855484eb2c2ce3a0bb584.png

运行结果:

dabea9c3cf9b803a171723ad200f4982.png

%号后面的s代表字符串,d代表十进制整数,f代表浮点数。

下面我们看几个常用的格式化转换符:

ba348d2dadb0b0e28f3edc40e89efeab.png

用法解释:

d 十进制数

x 十六进制数

o 八进制数

f 浮点数

s 字符串

c 字符

b 布尔值

h 散列值

n 和平台有关的行分隔符

再看几个常用的用于printf的标志:

22228c0727a6fa60cb7c584cf67de9ba.png

输出结果:

c4634d4d4838aebc03a8066701a963f5.png

+ 打印正负号

- 左对齐

,千位分隔符

8.2f8表示字符宽度,2表示小数点位数

空格 添加空格

接下来学习什么?

接下来我们将学习Java的控制语句和循环语句。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值