美文网首页
3. Java输入输出

3. Java输入输出

作者: 轻轻敲醒沉睡的心灵 | 来源:发表于2021-03-10 17:03 被阅读0次

    1. 输出

    我们使用System.out.println()来向屏幕输出一些内容。
    println是print line的缩写,表示输出并换行。因此,如果输出后不想换行,可以用print()

    public class Main {
        public static void main(String[] args) {
            System.out.print("A,");
            System.out.print("B,");
            System.out.print("C.");
            System.out.println();
            System.out.println("END");
        }
    }
    

    2. 格式化输出

    Java还提供了格式化输出的功能。为什么要格式化输出?因为计算机表示的数据不一定适合人来阅读:

    public class Main {
        public static void main(String[] args) {
            double d = 12900000;
            System.out.println(d); // 1.29E7
        }
    }
    

    如果要把数据显示成我们期望的格式,就需要使用格式化输出的功能。格式化输出使用System.out.printf(),通过使用占位符%?printf()可以把后面的参数格式化成指定格式:

    public class Main {
        public static void main(String[] args) {
            double d = 3.1415926;
            System.out.printf("%.2f\n", d); // 显示两位小数3.14
            System.out.printf("%.4f\n", d); // 显示4位小数3.1416
        }
    }
    

    Java的格式化功能提供了多种占位符,可以把各种数据类型“格式化”成指定的字符串

    占位符 说明
    %d 格式化输出整数
    %x 格式化输出十六进制整数
    %f 格式化输出浮点数
    %e 格式化输出科学计数法表示的浮点数
    %s 格式化字符串
    public class Main {
        public static void main(String[] args) {
            int n = 12345000;
            System.out.printf("n=%d, hex=%08x", n, n); // 注意,两个%占位符必须传入两个数;把一个整数格式化成十六进制,并用0补足8位
            
            String str = "看电视";
            System.out.printf("深深的怀念%s马上%s", str, str);
        }
    }
    

    3. 输入

    System.out代表标准输出流,而System.in代表标准输入流。直接使用System.in读取用户输入虽然是可以的,但需要更复杂的代码,而通过Scanner就可以简化后续的代码。
    有了Scanner对象后,要读取用户输入的字符串,使用scanner.nextLine(),要读取用户输入的整数,使用scanner.nextInt()。Scanner会自动转换数据类型,因此不必手动转换:

    import java.util.Scanner;
    
    public class Main {
        public static void main(String[] args) {
            Scanner scanner = new Scanner(System.in); // 创建Scanner对象
            System.out.print("Input your name: "); // 打印提示
            String name = scanner.nextLine(); // 读取一行输入并获取字符串
            System.out.print("Input your age: "); // 打印提示
            int age = scanner.nextInt(); // 读取一行输入并获取整数
            System.out.printf("Hi, %s, you are %d\n", name, age); // 格式化输出
        }
    }
    

    相关文章

      网友评论

          本文标题:3. Java输入输出

          本文链接:https://www.haomeiwen.com/subject/bcxmqltx.html