Java-I/O


Java - 输入输出

第一次基础java,输出一个hello world的时候,本以为一个printf能够解决,并没有,而是很长的一个东西。

java和C最大的区别终于,C语言信任程序员,很多东西靠程序员去考虑,就容易犯错。

而java不同,java害怕程序员犯错,所以什么都安排好了,但又显得很冗杂。

可能C语言只需10行代码,Python只需一行代码的程序,java却要写几十行。

但正因为这样,java的思想是你需要用什么,我们都准备好了,你来使用就好了。

Ax 基本输出语句

a 基本使用

使用System.out.println()System.out.print()System.out.printf()格式化输出方法。

class Main{
    public static void main(String args[])
    {
        int a;
        a = 123;
        System.out.print("hello java-lang");
        System.out.println("这是是带换行的。");
        System.out.printf("number: %d", a);
    }
}

执行结果:

hello java-lang这是是带换行的。
number: 123

b 格式化表

格式化控制符 说明 格式化控制符 说明
%s 字符串 %f 浮点
%c 字符 %a 十六进制浮点
%b BOOL %e 指数
%d int 十进制 %g 通用浮点
%x int 十六进制 %h 换行
%o int 八进制

Bx 基本输入语句

java.util.Scanner 是 Java5 的新特征

通过 Scanner 类来获取用户的输入,使用next()nextLine()方法输入

引入

import java.util.Scanner;

创建 Scanner 对象的基本语法

Scanner s = new Scanner(System.in);

a 使用next方法

import java.util.Scanner;
public class scanner {
    public static void main(String args[]){
        String galaxy;
        Scanner enomothem = new Scanner(System.in);  // 接收键盘数据
        galaxy = enomothem.next(); //使用next方法接收
        System.out.printf("%s", galaxy);
    }
}

输出结果

Enomothem[Enter]
Enomothem

b 使用NextLine方法

这里,使用了hasNextLine方法验证

import java.util.Scanner;
public class scanner_nextline {
    public static void main(String[] args){
        Scanner enomothem = new Scanner(System.in);
        
        System.out.println("使用NextLine");
        if (enomothem.hasNextLine()){        // 验证
            String galaxy = enomothem.nextLine();
            System.out.println("你输入了什么:"+ galaxy);
        }
        enomothem.close();
    }
}

输出结果

使用NextLine
Blog https://enomothem.cn[Enter]
你输入了什么:Blog https://enomothem.cn

c next() 与 nextLine() 区别

next():

  • 1、一定要读取到有效字符后才可以结束输入。
  • 2、对输入有效字符之前遇到的空白,next() 方法会自动将其去掉。
  • 3、只有输入有效字符后才将其后面输入的空白作为分隔符或者结束符。
  • next() 不能得到带有空格的字符串。

nextLine():

  • 1、以Enter为结束符,也就是说 nextLine()方法返回的是输入回车之前的所有字符。
  • 2、可以获得空白。

d Scanner方法表

方法 功能描述
next() 读取一个字符串,读到空格,Tab,或Enter结束
nextLine() 读取一行(包括空格和Tab),只有Enter结束
nextByte() 读取一个字节
nextShort() 读取一个短整型
nextInt() 读取一个转型
nextLong() 读取一个长整型
nextFloat() 读取一个Float
nextDouble() 读取一个Double

文章作者: Enomothem
版权声明: 本博客所有文章除特别声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 Enomothem !
  目录