本文共 10254 字,大约阅读时间需要 34 分钟。
编写Hello World!程序是每个Java开发者成长的起点。这段代码的核心结构如下:
public class HelloWorld { public static void main(String[] args) { System.out.println("Hello World!"); }}
public class HelloWorld
声明了一个名为HelloWorld的类public static void main(String[] args)
是程序的入口点System.out.println("Hello World!");
用于打印输出了解不同数据类型的基本用法,代码如下:
public class DataTypeDemo { public static void main(String[] args) { // 基本数据类型 int age = 25; // 整数 double height = 1.75; // 小数 char gender = '男'; // 字符 boolean isStudent = true; // 布尔值 // 引用数据类型 String name = "小明"; // 字符串 int[] scores = {90, 85, 92}; // 数组 System.out.println("姓名:" + name); System.out.println("年龄:" + age); System.out.println("身高:" + height + "m"); }}
定义一个Student类,具备设置和获取属性的方法:
public class Student { // 属性 private String name; private int age; private String[] courses; // 构造方法 public Student(String name, int age) { this.name = name; this.age = age; this.courses = new String[0]; } // Getter 和 Setter 方法 public String getName() { return name; } public void setName(String name) { this.name = name; } public int getAge() { return age; } public void setAge(int age) { this.age = age; } // 其他方法 public void addCourse(String course) { String[] newCourses = new String[courses.length + 1]; System.arraycopy(courses, 0, newCourses, 0, courses.length); newCourses[courses.length] = course; courses = newCourses; } public void study() { System.out.println(name + "正在学习"); }}
继承关系示例,Dog继承自Animal:
public class Animal { protected String name; public Animal(String name) { this.name = name; } public void makeSound() { System.out.println("动物发出声音"); }}public class Dog extends Animal { public Dog(String name) { super(name); } @Override public void makeSound() { System.out.println(name + "汪汪叫"); } public void fetch() { System.out.println(name + "在接飞盘"); }}
演示String类的常用方法:
public class String Demo { public static void main(String[] args) { String str = "Hello, Java!"; // 字符串操作 System.out.println("长度:" + str.length()); System.out.println("大写:" + str.toUpperCase()); System.out.println("小写:" + str.toLowerCase()); System.out.println("包含Java?" + str.contains("Java")); // 字符串分割 String names = "张三,李四,王五"; String[] nameArray = names.split(","); for (String name : nameArray) { System.out.println(name); } // 字符串格式化 String format = String.format("姓名:%s,年龄:%d", "小明", 18); System.out.println(format); }}
使用集合框架的示例:
public class Collection Demo { public static void main(String[] args) { // ArrayList 使用 ListnameList = new ArrayList<>(); nameList.add("张三"); nameList.add("李四"); nameList.add("王五"); // HashSet 使用 Set uniqueNames = new HashSet<>(); uniqueNames.add("张三"); uniqueNames.add("张三"); // 重复元素不会添加 // HashMap 使用 Map scoreMap = new HashMap<>(); scoreMap.put("张三", 90); scoreMap.put("李四", 85); // 遍历集合 System.out.println("List遍历:"); for (String name : nameList) { System.out.println(name); } System.out.println("\nMap遍历:"); for (Map.Entry entry : scoreMap.entrySet()) { System.out.println(entry.getKey() + ": " + entry.getValue()); } }}
示例代码:
public class File Demo { public static void main(String[] args) { try (BufferedWriter writer = new BufferedWriter(new FileWriter("test.txt"))) { writer.write("Hello, Java!"); writer.newLine(); writer.write("文件操作示例"); } catch (IOException e) { e.printStackTrace(); } // 读文件 try (BufferedReader reader = new BufferedReader(new FileReader("test.txt"))) { String line; while ((line = reader.readLine()) != null) { System.out.println(line); } } catch (IOException e) { e.printStackTrace(); } }}
用户友好的计算器界面:
import java.util.Scanner;public class Calculator { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); while (true) { System.out.println("\n简单计算器"); System.out.println("1. 加法"); System.out.println("2. 减法"); System.out.println("3. 乘法"); System.out.println("4. 除法"); System.out.println("5. 退出"); System.out.print("请选择操作(1-5):"); int choice = scanner.nextInt(); if (choice == 5) break; if (choice >= 1 && choice <= 4) { System.out.print("输入第一个数:"); double num1 = scanner.nextDouble(); System.out.print("输入第二个数:"); double num2 = scanner.nextDouble(); double result; switch (choice) { case 1: result = num1 + num2; System.out.printf("%.2f + %.2f = %.2f\n", num1, num2, result); break; case 2: result = num1 - num2; System.out.printf("%.2f - %.2f = %.2f\n", num1, num2, result); break; case 3: result = num1 * num2; System.out.printf("%.2f * %.2f = %.2f\n", num1, num2, result); break; case 4: if (num2 != 0) { result = num1 / num2; System.out.printf("%.2f / %.2f = %.2f\n", num1, num2, result); } else { System.out.println("错误:除数不能为0"); } break; } } else { System.out.println("无效的选择,请重试"); } } System.out.println("感谢使用,再见!”); }}
完整的学生信息管理系统:
import java.util.*; class Student { private String id; private String name; private int age; private Mapscores; public Student(String id, String name, int age) { this.id = id; this.name = name; this.age = age; this.scores = new HashMap<>(); } public String getId() { return id; } public String getName() { return name; } public int getAge() { return age; } public void addScore(String subject, int score) { scores.put(subject, score); } public double getAverageScore() { if (scores.isEmpty()) return 0; int sum = scores.values().stream().mapToInt(Integer::intValue).sum(); return (double) sum / scores.size(); } @Override public String toString() { return String.format("学号:%s,姓名:%s,年龄:%d,平均分:%.2f", id, name, age, getAverageScore()); }}public class StudentManagementSystem { private Map students = new HashMap<>(); private Scanner scanner = new Scanner(System.in); public void run() { while (true) { showMenu(); int choice = scanner.nextInt(); scanner.nextLine(); // 消耗换行符 switch (choice) { case 1: addStudent(); break; case 2: removeStudent(); break; case 3: addScore(); break; case 4: showAllStudents(); break; case 5: return; default: System.out.println("无效的选择,请重试"); } } } private void showMenu() { System.out.println("\n学生管理系统"); System.out.println("1. 添加学生"); System.out.println("2. 删除学生"); System.out.println("3. 录入成绩"); System.out.println("4. 查看所有学生"); System.out.println("5. 退出"); System.out.print("请选择操作(1-5):"); } private void addStudent() { System.out.print("输入学号:"); String id = scanner.nextLine(); System.out.print("输入姓名:"); String name = scanner.nextLine(); System.out.print("输入年龄:"); int age = scanner.nextInt(); students.put(id, new Student(id, name, age)); System.out.println("学生添加成功!"); } private void removeStudent() { System.out.print("输入要删除的学生学号:"); String id = scanner.nextLine(); if (students.remove(id) != null) { System.out.println("学生删除成功!"); } else { System.out.println("未找到该学生"); } } private void addScore() { System.out.print("输入学生学号:"); String id = scanner.nextLine(); Student student = students.get(id); if (student != null) { System.out.print("输入科目:"); String subject = scanner.nextLine(); System.out.print("输入分数:"); int score = scanner.nextInt(); student.addScore(subject, score); System.out.println("成绩录入成功!"); } else { System.out.println("未找到该学生"); } } private void showAllStudents() { if (students.isEmpty()) { System.out.println("暂无学生信息"); return; } System.out.println("所有学生信息:"); students.values().forEach(System.out::println); } public static void main(String[] args) { new StudentManagementSystem().run(); }}
从市场趋势来看,网络安全领域的就业机会非常广阔。2022年统计数据显示,网络安全专业的缺口已达140万人,行业对专业人才的需求持续增长。
网络安全的优势:
对于网络安全领域的学习,可以逐步深入以下方向:
掌握常用安全工具的使用方法:
网络安全领域提供了丰富的职业选择和发展空间,包括:
未来,熟悉云计算、大数据等新兴技术的网络安全人才更具竞争力。
希望这份详细的Java编程入门指南能够为学习者提供清晰的学习路径和实用的编程经验。
转载地址:http://zzryk.baihongyu.com/