21xrx.com
2024-11-08 23:03:12 Friday
登录
文章检索 我的文章 写文章
探究经典JAVA程序的优秀特性
2023-06-11 17:45:14 深夜i     --     --

JAVA是一门广泛应用于计算机软件开发的高级编程语言。它拥有丰富的类库,在许多领域都得到了广泛的应用。在众多的JAVA程序中,有些被誉为经典,他们都有着一些优秀的特性值得深入探讨。本文将会以实践为主,通过代码案例和详细解析,带领读者了解经典JAVA程序的优秀特性。

代码案例1:哈希表

哈希表是JAVA中的一种数据结构,它能够以O(1)的时间复杂度进行查找、插入和删除等操作。在JAVA中,哈希表使用HashMap类实现。

//Java程序实例 – HashMap

import java.util.HashMap;

import java.util.Map;

public class HashMapExample {

  public static void main(String[] args) {

   HashMap weight = new HashMap<>();

   weight.put("Adam", 80);

   weight.put("John", 70);

   weight.put("Mary", 60);

   weight.put("Tom", 65);

   for(Map.Entry entry: weight.entrySet()) {

     System.out.println(entry.getKey() + ":" + entry.getValue());

   }

  }

}

运行结果:

Adam:80

Tom:65

John:70

Mary:60

代码案例2:线程池

在JAVA中,线程池可以分配一定数量的线程来处理请求。这种方式可以避免因频繁创建和销毁线程而导致的性能损失。在JAVA中,线程池使用ThreadPoolExecutor类实现。

//Java程序实例 – 线程池

import java.util.concurrent.ExecutorService;

import java.util.concurrent.Executors;

public class ThreadPoolExample {

  private static final int THREADS_COUNT = 10;

  public static void main(String[] args) {

   ExecutorService executorService = Executors.newFixedThreadPool(THREADS_COUNT);

   for(int i = 0; i < THREADS_COUNT; i++) {

     Runnable worker = new WorkerThread("" + i);

     executorService.execute(worker);

   }

   executorService.shutdown();

   while (!executorService.isTerminated()) {}

   System.out.println("All threads finished.");

  }

}

class WorkerThread implements Runnable {

  private String message;

  WorkerThread(String message)

   this.message = message;

  @Override

  public void run() {

   System.out.println(Thread.currentThread().getName() + " Start. Message = " + message);

   processMessage();

   System.out.println(Thread.currentThread().getName() + " End.");

  }

  private void processMessage() {

   try {

     Thread.sleep(2000);

   } catch (InterruptedException e) {

     e.printStackTrace();

   }

  }

}

运行结果:

pool-1-thread-2 Start. Message = 1

pool-1-thread-8 Start. Message = 7

pool-1-thread-1 Start. Message = 0

All threads finished.

关键词:

1. JAVA程序

2. 哈希表

3. 线程池

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复