Logo
Section 1 / 6

第一个 Java 程序

学习如何创建并运行第一个 Java 程序。

导入

第一个 Java 程序

学习如何创建并运行第一个 Java 程序。

使用 Java 解决问题

理解简单程序执行流程和结果的基本工具包括:执行表:执行表是一种手动观察和更新程序每一步执行中变量值的方法。流程图:流程图是一种帮助理解包含决策的程序指令顺序的图表。然而,当问题涉及大量决策时,流程图会变得复杂。因此,我们提供可执行的嵌入式代码组件,以便通过运行程序来观察其输出。

我们可以多次运行程序,尝试不同的变量输入。也可以编辑这些程序,观察变量值或逻辑变化带来的结果,以促进学习。

在 Java 中,我们使用 nextLine() 进行输入(从用户读取值),使用 System.out.println() 进行输出(将值显示在屏幕上)。

Hello World

现在是时候编写我们的第一个 Java 程序了,它将简单地在屏幕上显示消息 “Hello World!”。

...

这是我们将用于编写 Java 代码的代码组件。可以通过点击组件底部的“运行”按钮来执行我们的 Java 程序:

1// 第一个 Java 程序:显示 Hello World 2class Test 3{ 4 public static void main(String args[]) 5 { 6 System.out.print("Hello World!"); 7 } 8}

注意:我们可以在 Java 程序中添加非执行文本,只需在文本开头加上双反斜杠符号(//)。这种文本称为注释。我们使用注释在程序中添加说明。

解释

  • 第 1 行:这是一条注释,因为它以 //(双斜杠)开头。仅供程序阅读者参考,描述程序的目的及相关内容。
  • 第 2–3 行:这是语言要求的结构,表示第一个代码块的开始。每个起始大括号 { 都有对应的结束大括号 },如第 8 行所示。我们在几乎每个 Java 程序中都会使用这些行。
  • 第 4–5 行:这是程序可执行部分的开始。每个可执行的 Java 程序都必须有一个 main 方法,作为程序的入口点。起始大括号 { 标识第二个代码块的开始。第 7 行对应关闭的大括号 }。
  • 第 6 行:这是唯一导致程序产生输出的语句,也是整个程序的目的所在。其他所有行都是为了支持这一行而存在的。我们必须在 print 前加上 System.out.,这是语言的要求。
  • 第 7 行:这是 main 代码块的结束,与第 5 行的起始大括号对应。
  • 第 8 行:这是类代码块的结束,与第 3 行的起始大括号对应。

输出中的换行

有多种方式在输出中实现换行,如下代码所示:

1// 第一个 Java 程序:展示不同方式的换行 2class Test 3{ 4 public static void main(String args[]) 5 { 6 System.out.print("Single"); // 下一个输出将在同一行 7 System.out.print("Line\n"); // 由于换行符 `\n`,下一个输出将在下一行 8 System.out.print("Separate new line" + "\n"); // 换行符可以单独书写 9 System.out.println("使用 println 实现换行"); // println 在末尾自动添加换行 10 System.out.print("它展示了换行效果"); // 这一行将在新行显示 11 } 12}

解释

  • 第 6–7 行:这两行的文本在输出中位于同一行。\n 符号称为换行字符,用于实现换行。
  • 第 8 行:展示了将 \n 作为独立字符串使用的示例。
  • 第 9 行:说明了使用 println 实现换行的方法,如第 10 行输出所示。

使用变量自定义消息

让我们编写另一个 Java 程序,先获取用户的姓名,再显示一条问候消息。我们使用变量 yourName 来存储用户输入的内容。

变量名只能包含字母(A–Z 和 a–z)和下划线符号(_)。也可以包含数字(0–9),但变量名不能以数字开头。例如,Key_2 是合法的变量名,而 2_key 不合法。变量名区分大小写,即 name、Name 和 NAME 是三个不同的变量。

左侧代码框中的 Test.java 是程序文件的名称。.java 表示这是一个 Java 程序。当我们按下“运行”按钮执行程序时,会出现一个黑色屏幕,称为终端,我们可以在其中输入值并查看输出结果:

No configuration found for ID: ab15496696ec8ace6074d075c9c4ce2174ebb1f917e591d31e488525bd37bb3d

输出末尾的单词 exit 表示程序在终端中已执行完毕。

解释

  • 第 1 行:Scanner 类用于获取用户输入,它位于 java.util 包中,因此需要导入该包。
  • 第 6 行:要使用 Scanner 类,必须创建一个对象。在此,我们创建了一个名为 myObj 的 Scanner 类对象,并使用其可用方法之一。Scanner(System.in) 用于从终端窗口读取输入。
  • 第 8 行:nextLine() 用于从用户读取字符串值。

注意:\n 是 Java 中的转义字符,用于在输出中插入换行。

上述代码在第一行显示消息 "Hello ",后接变量 yourName 的值。Hello 后面的空格是标签的一部分,用于在输出中保持 name 值前的空格。然后在第二行显示 “Welcome to Educative”。

Java 编程练习

让我们练习编写第一个 Java 程序,该程序从用户处获取多个输入。

讲一个故事

编写一个程序,根据用户提供的信息讲述一个故事。程序应要求用户输入姓名、年龄、城市、大学、职业和宠物名字。

我们需要在标记为“在下方输入”的输入框中提供用户输入。因此,当解决方案准备就绪并可执行时,我们可以代表用户逐行输入以下信息进行测试:

  • 用户姓名
  • 用户年龄
  • 用户所在城市
  • 用户大学
  • 用户职业
  • 用户宠物名字

完成程序编写后,点击“运行”按钮执行程序。程序应在终端中显示输入提示,我们可以输入所需的信息。请记得存储输入内容,并按需使用 print 或 println 输出。程序应显示如下故事,并将用户输入插入到相应位置:

1There once was a person named NAME who lived in CITY. At the age of AGE, NAME went to college at COLLEGE. NAME graduated and went to work as a PROFESSION. Then, NAME adopted an animal named PETNAME. They both lived happily ever after!

No configuration found for ID: 1115929ae8ae22f8730c34502e720132042705e1df109b896af8fd1bce80e881

您可以在上方的代码组件中运行以下代码:

1import java.util.Scanner; // 导入 Scanner 类 2class Test 3{ 4 public static void main(String args[]) 5 { 6 Scanner myObj = new Scanner(System.in); // 创建 Scanner 对象 7 8 System.out.print("请输入用户姓名: "); 9 String userName = myObj.nextLine(); 10 11 System.out.print("请输入用户年龄: "); 12 String userAge = myObj.nextLine(); 13 14 System.out.print("请输入用户所在城市: "); 15 String userCity = myObj.nextLine(); 16 17 System.out.print("请输入用户大学: "); 18 String userCollege = myObj.nextLine(); 19 20 System.out.print("请输入用户职业: "); 21 String userProfession = myObj.nextLine(); 22 23 System.out.print("请输入用户宠物名字: "); 24 String userPet = myObj.nextLine(); 25 26 System.out.print("从前有个人叫 " + userName); 27 System.out.print(",住在 " + userCity); 28 System.out.print("。在他 " + userAge + " 岁时,"); 29 System.out.print(userName); 30 System.out.print("去了 " + userCollege); 31 System.out.print("。" + userName); 32 System.out.print("毕业后,成为了一名 " + userProfession); 33 System.out.print("。后来," + userName); 34 System.out.print("收养了一只名叫 " + userPet); 35 System.out.println("的动物。他们从此过上了幸福的生活!"); 36 } 37}

决策与分支

Java 基础