自学Java17

126 阅读2分钟

引言

  • 在记录自己自学java过程中,首先声明关于学习顺序可能并不很科学,即使我也是通过一些公开的资料来进行学习,但不会是完全无基础的教学,更像是比对着python(本人平时编程使用的是python)比较实现方法的异同学习,请酌情参考学习,有理解不对的地方欢迎指正。

java-流程控制 1

输入与输出

输入

  • 程序既然可以输出,那也可以设置输入,也必然可以进行格式化输入
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); // 格式化输出
    }
}

  • 关于Scanner
    • 首先Scanner是Scanner类,属于java.util工具包中的一个实用性工具,可以理解成一个简单的文本扫描器,可以解析基础数据类型和字符串;
    • 可以通过使用Scanner类来进行交互式设计,从而实现程序的选择性执行,说人话就是可以实现一个可对话的小程序
  • nextLine()和next()都可以作为获取函数,但是还是有区别的(还有很多,仅作为例子)
    • next():
      • 1、一定要读取到有效字符后才可以结束输入。
      • 2、对输入有效字符之前遇到的空白,next() 方法会自动将其去掉。
      • 3、只有输入有效字符后才将其后面输入的空白作为分隔符或者结束符。
      • 4,next() 不能得到带有空格的字符串。
    • nextLine():
      • 1、以Enter为结束符,也就是说 nextLine()方法返回的是输入回车之前的所有字符。
      • 2、可以获得空白。
    • next+数据类型: 获取输入的对应类型的数字
    • hasNext+基础数据类型,返回true或者false,用于判断是否输入完成。
  • 注意:这种IO类型的都需要手动关闭否则会一直占用空间
    • 对象名.close();//手动关闭scanner,