以下是60个常用的Java代码片段,涵盖了基础语法、常用类和一些实用功能:
基础语法
-
Hello World
java">public class HelloWorld { public static void main(String[] args) { System.out.println("Hello, World!"); } }
-
变量声明
java">int number = 10; String text = "Hello";
-
条件语句
java">if (number > 0) { System.out.println("Positive"); } else { System.out.println("Negative or Zero"); }
-
循环
java">for (int i = 0; i < 5; i++) { System.out.println(i); }
-
数组
java">int[] numbers = {1, 2, 3, 4, 5};
方法与函数
-
方法定义
java">public int add(int a, int b) { return a + b; }
-
方法重载
java">public int add(int a, int b) { return a + b; } public double add(double a, double b) { return a + b; }
-
递归
java">public int factorial(int n) { if (n == 0) return 1; return n * factorial(n - 1); }
面向对象编程
-
类与对象
java">class Dog { String name; void bark() { System.out.println(name + " says woof!"); } }
-
构造函数
java">class Cat { String name; Cat(String name) { this.name = name; } }
-
继承
java">class Animal {} class Dog extends Animal {}
-
接口
java">interface Animal { void sound(); } class Cat implements Animal { public void sound() { System.out.println("Meow"); } }
集合框架
-
ArrayList
java">List<String> list = new ArrayList<>(); list.add("Hello");
-
HashMap
java">Map<String, Integer> map = new HashMap<>(); map.put("One", 1); map.put("Two", 2);
-
遍历集合
java">for (String item : list) { System.out.println(item); }
异常处理
-
try-catch
java">try { int result = 10 / 0; } catch (ArithmeticException e) { System.out.println("Cannot divide by zero!"); }
-
自定义异常
java">class MyException extends Exception { public MyException(String message) { super(message); } }
输入输出
-
文件读取
java">try (BufferedReader br = new BufferedReader(new FileReader("file.txt"))) { String line; while ((line = br.readLine()) != null) { System.out.println(line); } } catch (IOException e) { e.printStackTrace(); }
-
文件写入
java">try (BufferedWriter writer = new BufferedWriter(new FileWriter("output.txt"))) { writer.write("Hello, World!"); } catch (IOException e) { e.printStackTrace(); }
日期与时间
-
获取当前日期
java">LocalDate today = LocalDate.now();
-
日期格式化
java">DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd"); String formattedDate = today.format(formatter);
线程
-
创建线程
java">Thread thread = new Thread(() -> System.out.println("Thread running")); thread.start();
-
Runnable接口
java">class MyRunnable implements Runnable { public void run() { System.out.println("Runnable running"); } } new Thread(new MyRunnable()).start();
Lambda表达式
- 使用Lambda
java">List<String> names = Arrays.asList("Alice", "Bob", "Charlie"); names.forEach(name -> System.out.println(name));
Stream API
- 使用Stream
java">List<String> filtered = names.stream() .filter(name -> name.startsWith("A")) .collect(Collectors.toList());
常用工具类
-
Math类
java">int max = Math.max(5, 10);
-
String manipulation
java">String uppercase = "hello".toUpperCase();
-
String split
java">String[] parts = "a,b,c".split(",");
-
UUID生成
java">String uuid = UUID.randomUUID().toString();
其他常用功能
-
JSON处理(使用Gson)
java">Gson gson = new Gson(); String json = gson.toJson(yourObject); YourClass obj = gson.fromJson(json, YourClass.class);
-
正则表达式
java">boolean matches = "abc".matches("[a-z]+");
-
字符串连接
java">String result = String.join(", ", list);
数据库连接(JDBC)
-
连接数据库
java">Connection con = DriverManager.getConnection("jdbc:mysql://localhost:3306/test", "user", "password");
-
执行查询
java">Statement stmt = con.createStatement(); ResultSet rs = stmt.executeQuery("SELECT * FROM users");
网络编程
- 连接到URL
java">URL url = new URL("http://example.com"); HttpURLConnection conn = (HttpURLConnection) url.openConnection();
JavaFX (GUI)
- 创建窗口
java">Stage stage = new Stage(); Scene scene = new Scene(new StackPane(), 300, 250); stage.setScene(scene); stage.show();
注解
- 自定义注解
java">@Retention(RetentionPolicy.RUNTIME) @Target(ElementType.METHOD) public @interface MyAnnotation {}
反射
-
获取类信息
java">Class<?> clazz = Class.forName("java.lang.String");
-
调用方法
java">Method method = clazz.getMethod("length"); Object result = method.invoke("Hello");
Java 8 任意和方法引用
- 方法引用
java">names.forEach(System.out::println);
其他实用代码
-
版本判断
java">if (System.getProperty("java.version").startsWith("1.8")) { System.out.println("Java 8"); }
-
克隆对象
java">Object cloned = original.clone();
-
获取栈信息
java">new Exception().printStackTrace();
-
检查空值
java">if (obj == null) { System.out.println("Object is null"); }
-
避免重复元素(Set)
java">Set<String> set = new HashSet<>(list);
-
将集合转为数组
java">String[] array = list.toArray(new String[0]);
-
时间延迟
java">Thread.sleep(1000);
-
获取输入
java">Scanner scanner = new Scanner(System.in); String input = scanner.nextLine();
-
转换类型
java">int value = Integer.parseInt("123");
-
使用Optional防止NullPointerException
java">Optional<String> optional = Optional.ofNullable(name); optional.ifPresent(System.out::println);
-
使用StringBuilder
java">StringBuilder sb = new StringBuilder(); sb.append("Hello").append(" World"); String result = sb.toString();
-
多线程锁
java">synchronized (this) { // synchronized block }
-
使用ExecutorService
java">ExecutorService executor = Executors.newFixedThreadPool(2); executor.submit(() -> System.out.println("Task"));
-
获取环境变量
java">String path = System.getenv("PATH");
-
打印当前线程名称
java">System.out.println(Thread.currentThread().getName());
-
基本数据类型转为字符串
java">String str = Integer.toString(100);
-
简化主函数
java">public static void main(String... args) { // ... }
-
使用File类
java">File file = new File("file.txt"); boolean exists = file.exists();
-
使用Property类
java">Properties properties = new Properties(); properties.load(new FileReader("config.properties"));
-
使用String.format
java">String formatted = String.format("Hello, %s!", "World");
这些代码示例涵盖了Java的基本技能和一些高级特性,希望能够帮助您更好地理解Java编程。