《Java 新手入门试题集(含答案):从 HelloWorld 到简单项目,循序渐进》
Java 新手入门试题集(含答案):从 HelloWorld 到简单项目,循序渐进
Java 作为一门面向对象的编程语言,广泛应用于企业开发、移动应用和 Web 服务。对于新手来说,从基础语法开始逐步实践,是掌握 Java 的关键路径。本试题集提供一系列原创试题和详细答案,从最简单的 HelloWorld 程序出发,逐步过渡到面向对象概念和简单项目实践。每个试题都设计为独立练习单元,帮助您通过动手编码巩固知识。所有代码均使用 Java 编写,确保实用性。
第一部分:HelloWorld 入门(基础语法起步)
从这里开始,您将学习 Java 的基本结构,包括类定义、主方法和输出语句。
试题 1:编写一个 Java 程序,输出 "Hello, World!" 到控制台。
- 要求:使用标准 Java 语法。
- 答案:
public class HelloWorld {
public static void main(String[] args) {
System.out.println("Hello, World!");
}
}
解释:这是一个标准入门程序。public class HelloWorld 定义类名,main 方法是程序入口点,System.out.println 用于输出文本。编译运行后,控制台显示 "Hello, World!"。
试题 2:扩展 HelloWorld 程序,添加一个变量存储您的名字,并输出 "Hello, [您的名字]!"。
- 要求:使用字符串变量。
- 答案:
public class HelloName {
public static void main(String[] args) {
String name = "张三"; // 替换为您的名字
System.out.println("Hello, " + name + "!");
}
}
解释:这里引入了变量概念。String name 声明一个字符串变量,通过 + 运算符连接文本输出。运行后,输出如 "Hello, 张三!"。
第二部分:基础语法深化(变量、控制结构和运算符)
掌握变量、数据类型和控制结构是 Java 核心。本部分试题覆盖常见操作。
试题 3:声明两个整数变量 a 和 b,计算它们的和并输出结果。
- 要求:使用整数类型和算术运算符。
- 答案:
public class SumCalculator {
public static void main(String[] args) {
int a = 5;
int b = 3;
int sum = a + b;
System.out.println("Sum: " + sum);
}
}
解释:int 表示整数类型,a + b 执行加法运算。输出结果为 "Sum: 8"。算术运算符包括 +、-、*、/,可用于基本计算。
试题 4:编写程序,判断一个整数是否为正数。如果是正数,输出 "正数";否则输出 "非正数"。
- 要求:使用
if-else语句。 - 答案:
public class CheckPositive {
public static void main(String[] args) {
int number = -2; // 可更改为任意整数
if (number > 0) {
System.out.println("正数");
} else {
System.out.println("非正数");
}
}
}
解释:if-else 结构实现条件分支。当 number > 0 时执行第一个块,否则执行 else 块。例如,输入 -2 输出 "非正数"。
试题 5:使用循环输出数字 1 到 5。
- 要求:使用
for循环。 - 答案:
public class LoopExample {
public static void main(String[] args) {
for (int i = 1; i <= 5; i++) {
System.out.println(i);
}
}
}
解释:for 循环初始化 i=1,每次迭代 i 增加 1(i++),直到 i<=5 为假。输出结果为 1,2,3,4,5 各占一行。
第三部分:面向对象编程(类、对象和方法)
Java 的核心是面向对象。本部分试题帮助您理解类、对象和方法的创建与使用。
试题 6:定义一个 Person 类,包含属性 name 和方法 sayHello(),并在主类中创建对象调用该方法。
- 要求:属性私有,方法公有。
- 答案:
// Person 类定义
public class Person {
private String name;
public Person(String name) {
this.name = name;
}
public void sayHello() {
System.out.println("Hello, my name is " + name);
}
}
// 主类测试
public class TestPerson {
public static void main(String[] args) {
Person person = new Person("李四");
person.sayHello();
}
}
解释:Person 类封装了数据(name)和行为(sayHello)。在主类中,new Person("李四") 创建对象,person.sayHello() 调用方法,输出 "Hello, my name is 李四"。
试题 7:扩展 Person 类,添加一个方法 calculateAge,计算年龄(基于出生年份)。
- 要求:使用当前年份减去出生年份。
- 答案:
public class Person {
private String name;
private int birthYear;
public Person(String name, int birthYear) {
this.name = name;
this.birthYear = birthYear;
}
public void sayHello() {
System.out.println("Hello, my name is " + name);
}
public void calculateAge() {
int currentYear = 2023; // 假设当前年份
int age = currentYear - birthYear;
System.out.println(name + "'s age is " + age);
}
}
// 测试代码
public class TestPerson {
public static void main(String[] args) {
Person person = new Person("王五", 1990);
person.calculateAge(); // 输出 "王五's age is 33"
}
}
解释:新增 birthYear 属性和 calculateAge 方法,演示了如何扩展类功能。计算使用简单减法 $ \text{age} = \text{currentYear} - \text{birthYear} $。
第四部分:简单项目实践(命令行应用)
将所学知识整合到小型项目中,提升实际问题解决能力。
试题 8:构建一个命令行计算器,支持加、减、乘、除操作。
- 要求:用户输入两个数字和一个运算符,程序输出结果。
- 答案:
import java.util.Scanner;
public class SimpleCalculator {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("Enter first number: ");
double num1 = scanner.nextDouble();
System.out.print("Enter operator (+, -, *, /): ");
char operator = scanner.next().charAt(0);
System.out.print("Enter second number: ");
double num2 = scanner.nextDouble();
double result;
switch (operator) {
case '+':
result = num1 + num2;
break;
case '-':
result = num1 - num2;
break;
case '*':
result = num1 * num2;
break;
case '/':
if (num2 != 0) {
result = num1 / num2;
} else {
System.out.println("Error: Division by zero");
return;
}
break;
default:
System.out.println("Invalid operator");
return;
}
System.out.println("Result: " + result);
}
}
解释:这个项目综合了输入处理、条件判断和运算符应用。使用 Scanner 获取用户输入,switch 处理不同运算符。例如,输入 5 * 3 输出 "Result: 15.0"。除法时检查除数为零错误。
试题 9:创建一个简单的任务管理器,允许添加和列出任务。
- 要求:使用数组存储任务,实现添加和显示功能。
- 答案:
import java.util.Scanner;
public class TaskManager {
private static String[] tasks = new String[10];
private static int taskCount = 0;
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
boolean running = true;
while (running) {
System.out.println("\n1. Add Task\n2. List Tasks\n3. Exit");
System.out.print("Choose an option: ");
int choice = scanner.nextInt();
scanner.nextLine(); // 消耗换行符
switch (choice) {
case 1:
System.out.print("Enter task description: ");
String task = scanner.nextLine();
addTask(task);
break;
case 2:
listTasks();
break;
case 3:
running = false;
break;
default:
System.out.println("Invalid option");
}
}
scanner.close();
}
public static void addTask(String task) {
if (taskCount < tasks.length) {
tasks[taskCount] = task;
taskCount++;
System.out.println("Task added!");
} else {
System.out.println("Task list full");
}
}
public static void listTasks() {
if (taskCount == 0) {
System.out.println("No tasks");
} else {
System.out.println("Tasks:");
for (int i = 0; i < taskCount; i++) {
System.out.println((i + 1) + ". " + tasks[i]);
}
}
}
}
解释:这个项目模拟真实应用,使用数组管理数据。用户通过菜单选择添加或列出任务。例如,添加 "学习 Java" 后,列出时显示 "1. 学习 Java"。它涵盖了循环、数组和用户交互。
结语
通过本试题集,您从 HelloWorld 起步,逐步掌握了 Java 基础语法、面向对象编程和项目构建。每个试题都配有可运行的代码,建议您手动输入并调试,以加深理解。Java 学习重在实践,接下来可以尝试更多项目如文件处理或 GUI 应用。推荐资源包括 Oracle 官方文档和开源社区教程,持续练习将助您快速成长。如果您遇到问题,欢迎在编程论坛交流讨论!
更多推荐



所有评论(0)