一文带你了解ChatGPT API的使用

目录
  • 1.概述
  • 2.内容
    • 2.1 ChatGPT优点
    • 2.2 ChatGPT的应用场景
    • 2.3 ChatGPT的发展前景
  • 3.API应用
  • 4.API代码实现
    • 4.1 Python实现
    • 4.2 JavaScript实现
    • 4.3 Java实现
    • 4.4 智能对话简易实现
  • 5.总结
    • 1.数据准备
    • 2.模型训练
    • 3.对话生成
    • 4.模型评估

1.概述

随着人工智能技术的不断发展,越来越多的AI产品被应用到各个领域,其中最具代表性的莫过于人工智能语言模型。语言模型是一种可以通过学习大量语言数据来预测文本或语音的技术,其应用范围十分广泛,如智能客服、机器翻译、语音助手等。

而ChatGPT是其中最为优秀的语言模型之一。ChatGPT是OpenAI公司开发的一款基于自然语言处理技术的对话生成模型,其采用了GPT架构(Generative Pre-trained Transformer),能够自动学习自然语言数据的特征,并生成高质量的语言文本。在近几年的发展中,ChatGPT已经成为了AI时代的语言沟通利器,它的应用范围不断扩大,其产生的影响也日益显现。本篇博客,笔者将为大家来介绍一下ChatGPT的API使用。

2.内容

在介绍ChatGPT API之前,我们先来了解一下它的优点、应用前景、发展前景等,内容如下:

2.1 ChatGPT优点

  • 自然度高:ChatGPT的生成文本十分自然,很难被区分出是由AI生成的还是由人生成的。这是因为ChatGPT采用了Transformer模型的架构,可以在学习过大量语言数据后,自动生成高质量的文本。
  • 高效性:ChatGPT的生成速度非常快,可以在很短的时间内生成大量高质量的文本,使得在一些需要快速生成大量文本的应用场景中十分适用。
  • 适应性强:ChatGPT能够适应不同的对话场景,对于不同的用户提出的问题或者不同的应用场景,都能够进行相应的回答或者生成相应的文本,非常灵活。

2.2 ChatGPT的应用场景

  • 智能客服:随着互联网技术的不断发展,越来越多的企业开始提供在线客服服务,而ChatGPT的优秀语言生成能力,使得它能够成为智能客服的重要组成部分。ChatGPT能够快速、准确地回答用户的问题,可以有效提升客服工作效率,减少人力成本。
  • 机器翻译:在全球化的背景下,机器翻译技术的应用越来越广泛。ChatGPT的优秀语言生成能力,可以使得翻译结果更加自然,减少翻译过程中的误差,提高翻译质量。
  • 智能家居:智能家居是一种通过智能化技术来提升居住环境的舒适度和便利性的方式。ChatGPT可以作为智能家居的对话生成模型,通过对话交互来控制家居设备,提高智能家居的使用体验。

2.3 ChatGPT的发展前景

作为一款在自然语言处理领域非常优秀的模型,ChatGPT在未来的发展中有着广阔的前景。

  • 多语言支持:随着全球化的加速,多语言支持成为了人工智能语言模型的一个重要发展方向。未来的ChatGPT可以通过学习不同语言的语言数据,实现多语言支持,为不同地区、不同语种的用户提供更好的服务。
  • 更加智能化:ChatGPT可以通过学习大量的对话数据,从中提取出用户需求的关键信息,进一步提升对话的智能化水平。未来的ChatGPT可以实现更加智能化的对话交互,使得用户体验更加舒适、便利。
  • 应用场景扩展:随着ChatGPT的不断发展,其应用场景也将会不断扩展。未来的ChatGPT可以应用于更多的领域,如医疗、金融、法律等,为用户提供更加精准、高效的服务。

3.API应用

ChatGPT API是一种基于云计算的语言模型API,可以提供自然语言处理(NLP)和对话生成的能力。它可以帮助开发者在自己的应用程序中快速地集成和使用ChatGPT模型,实现智能对话和交流。下面是一些ChatGPT API应用的案例:

1.智能客服

ChatGPT API可以帮助企业和组织实现智能客服功能,使客户能够通过自然语言与企业进行对话和交流。在智能客服场景中,ChatGPT API可以实现对话生成和意图识别等功能,帮助客户解决问题和提供服务。

2.聊天机器人

ChatGPT API可以帮助开发者构建自己的聊天机器人,实现自然、流畅、智能的对话。开发者可以通过ChatGPT API提供的接口,实现对话生成、情感分析、实体识别等功能,使聊天机器人具有更加智能和人性化的交流方式。

3.语音助手

ChatGPT API可以与语音识别技术相结合,实现智能语音助手的功能。通过ChatGPT API提供的接口,语音助手可以理解用户的意图和问题,并提供相应的回答和服务。同时,还可以实现多轮对话和个性化服务等功能,提高用户体验和满意度。

4.社交娱乐

ChatGPT API可以帮助社交应用程序实现更加智能和有趣的交流功能。例如,在社交娱乐场景中,可以通过ChatGPT API提供的接口,实现自动回复、情感识别、趣味对话等功能,增强用户的互动和娱乐体验。

总的来说,ChatGPT API是一种非常有用和强大的技术,可以帮助开发者快速地构建智能应用程序,实现自然、流畅、智能的对话和交流。在具体的应用中,需要根据不同的场景和需求,选择合适的API接口和技术组合,以提高应用的性能和可靠性。随着技术的不断发展和完善,我们相信ChatGPT API将会在更多的领域和场景中发挥出它的价值和作用。

4.API代码实现

首先,我们来测试一个简单的API,示例代码如下所示:

curl https://api.openai.com/v1/completions \
  -H 'Content-Type: application/json' \
  -H 'Authorization: Bearer YOUR_API_KEY' \
  -d '{
  "model": "text-davinci-003",
  "prompt": "Say this is a test",
  "max_tokens": 7,
  "temperature": 0
}'

这里的YOUR_API_KEY密钥,可以从OpenAI申请创建。执行结果如下:

{
    "id": "cmpl-6oAwZvNHj7fQlxSzLGeJL5i3A4016",
    "object": "text_completion",
    "created": 1677416487,
    "model": "text-davinci-003",
    "choices": [
        {
            "text": "\n\nThis is indeed a test",
            "index": 0,
            "logprobs": null,
            "finish_reason": "length"
        }
    ],
    "usage": {
        "prompt_tokens": 5,
        "completion_tokens": 7,
        "total_tokens": 12
    }
}

4.1 Python实现

要使用ChatGPT API实现智能对话和交流,我们需要先获取API的访问密钥,然后使用API提供的接口和参数,发送HTTP请求并处理响应结果。下面是一个使用Python实现ChatGPT API的示例代码:

import requests
import json

# Set the API endpoint and access token
api_endpoint = "https://api.openai.com/v1/engines/davinci-codex/completions"
access_token = "<your-access-token>"

# Set the prompt text and parameters
prompt_text = "Hello, how are you today?"
params = {
    "prompt": prompt_text,
    "temperature": 0.7,
    "max_tokens": 60,
    "top_p": 1,
    "frequency_penalty": 0.5,
    "presence_penalty": 0.0
}

# Send the API request
headers = {"Content-Type": "application/json",
           "Authorization": f"Bearer {access_token}"}
response = requests.post(api_endpoint, headers=headers, json=params)

# Process the API response
if response.status_code == 200:
    response_text = json.loads(response.text)["choices"][0]["text"]
    print(f"ChatGPT response: {response_text}")
else:
    print(f"Error: {response.status_code} - {response.text}")

在上面的代码中,我们首先设置了API的访问密钥和访问端点。然后,我们设置了对话的文本和一些生成对话的参数。接着,我们使用Python的requests库发送HTTP POST请求,将对话文本和参数作为JSON数据发送给API,并将响应结果转换为文本格式。最后,我们处理API的响应结果,将生成的对话文本输出到控制台。

需要注意的是,以上代码示例仅仅是ChatGPT API的一个简单应用,实际应用中需要根据具体的业务场景和需求,选择合适的API接口和参数。同时,还需要注意API的访问频率和响应速度等因素,以保证应用的性能和稳定性。

4.2 JavaScript实现

除了使用Python编写代码实现ChatGPT API的应用,还可以使用其他编程语言和工具来实现,例如JavaScript、Java、C#、Postman等。下面我们以JavaScript为例,介绍如何使用ChatGPT API生成智能对话。

在JavaScript中,我们可以使用fetch函数或者axios库来发送API请求。下面是一个使用axios库的示例代码:

const axios = require('axios');

// Set the API endpoint and access token
const apiEndpoint = 'https://api.openai.com/v1/engines/davinci-codex/completions';
const accessToken = '<your-access-token>';

// Set the prompt text and parameters
const promptText = 'Hello, how are you today?';
const params = {
  prompt: promptText,
  temperature: 0.7,
  max_tokens: 60,
  top_p: 1,
  frequency_penalty: 0.5,
  presence_penalty: 0.0
};

// Send the API request
const headers = {
  'Content-Type': 'application/json',
  'Authorization': `Bearer ${accessToken}`
};
axios.post(apiEndpoint, params, { headers })
  .then(response => {
    const responseText = response.data.choices[0].text;
    console.log(`ChatGPT response: ${responseText}`);
  })
  .catch(error => console.error(error));

以上代码中,我们首先引入了axios库,并设置了API的访问端点和访问密钥。然后,我们设置了对话的文本和一些生成对话的参数。接着,我们使用axios库发送HTTP POST请求,将对话文本和参数作为JSON数据发送给API,并将响应结果转换为文本格式。最后,我们处理API的响应结果,将生成的对话文本输出到控制台。

需要注意的是,以上代码示例同样仅仅是ChatGPT API的一个简单应用,实际应用中需要根据具体的业务场景和需求,选择合适的API接口和参数。同时,还需要注意API的访问频率和响应速度等因素,以保证应用的性能和稳定性。

4.3 Java实现

除了JavaScript,ChatGPT API还可以使用Java来进行调用。在Java中,我们可以使用Apache HttpComponents和Jackson等库来发送HTTP请求和解析JSON响应。下面是一个使用Apache HttpComponents和Jackson的示例代码:

import java.io.IOException;
import java.util.Arrays;

import org.apache.http.HttpEntity;
import org.apache.http.client.methods.CloseableHttpResponse;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.entity.StringEntity;
import org.apache.http.impl.client.CloseableHttpClient;
import org.apache.http.impl.client.HttpClients;
import org.apache.http.util.EntityUtils;

import com.fasterxml.jackson.databind.JsonNode;
import com.fasterxml.jackson.databind.ObjectMapper;

public class ChatGPTExample {

  private static final String API_ENDPOINT = "https://api.openai.com/v1/engines/davinci-codex/completions";
  private static final String ACCESS_TOKEN = "<your-access-token>";

  public static void main(String[] args) throws IOException {
    // Create a new HTTP client
    CloseableHttpClient httpClient = HttpClients.createDefault();

    // Set the API request parameters
    String prompt = "Hello, how are you today?";
    int maxTokens = 60;
    double temperature = 0.7;
    double topP = 1.0;
    double frequencyPenalty = 0.5;
    double presencePenalty = 0.0;

    // Create a new HTTP POST request
    HttpPost httpPost = new HttpPost(API_ENDPOINT);
    httpPost.addHeader("Content-Type", "application/json");
    httpPost.addHeader("Authorization", "Bearer " + ACCESS_TOKEN);

    // Set the request body as a JSON string
    ObjectMapper objectMapper = new ObjectMapper();
    String requestBody = objectMapper.writeValueAsString(
        new ChatGPTRequest(prompt, maxTokens, temperature, topP, frequencyPenalty, presencePenalty));
    httpPost.setEntity(new StringEntity(requestBody));

    // Send the API request and parse the response
    CloseableHttpResponse response = httpClient.execute(httpPost);
    HttpEntity entity = response.getEntity();
    String responseBody = EntityUtils.toString(entity);
    EntityUtils.consume(entity);
    response.close();

    JsonNode responseJson = objectMapper.readTree(responseBody);
    String responseText = responseJson.get("choices").get(0).get("text").asText();

    // Print the response text to the console
    System.out.println("ChatGPT response: " + responseText);

    // Close the HTTP client
    httpClient.close();
  }

  static class ChatGPTRequest {
    public String prompt;
    public int max_tokens;
    public double temperature;
    public double top_p;
    public double frequency_penalty;
    public double presence_penalty;

    public ChatGPTRequest(String prompt, int maxTokens, double temperature, double topP,
        double frequencyPenalty, double presencePenalty) {
      this.prompt = prompt;
      this.max_tokens = maxTokens;
      this.temperature = temperature;
      this.top_p = topP;
      this.frequency_penalty = frequencyPenalty;
      this.presence_penalty = presencePenalty;
    }
  }
}

以上代码中,我们首先创建了一个HTTP客户端,然后设置了API的访问端点和访问密钥。接着,我们设置了对话的文本和一些生成对话的参数,并使用Jackson库将请求参数转换为JSON字符串。然后,我们创建了一个HTTP POST请求,并将JSON字符串设置为请求体。接着,我们使用HTTP客户端发送请求,并解析了响应。最后,我们使用Jackson库从响应JSON中提取生成的对话文本,并将其打印到控制台上。

以上代码可以使用任何Java编译器或IDE进行编译和运行。在运行代码之前,需要将<your-access-token>替换为您自己的OpenAI API访问密钥。

除了Java,ChatGPT API还可以使用其他编程语言进行调用,例如Python、PHP、Ruby等。对于这些编程语言,通常也有相应的HTTP客户端库和JSON解析库可供使用。实际上,大多数现代编程语言都提供了这些库,以便轻松地与REST API进行交互。

ChatGPT API的应用非常广泛。例如,在客服和销售领域,可以使用ChatGPT API来自动回复和解答客户的问题,从而提高客户服务质量和效率。在教育和培训领域,可以使用ChatGPT API来生成自动答案和解释,从而帮助学生更好地理解和掌握知识点。在娱乐和文化领域,可以使用ChatGPT API来生成虚拟人物或角色,并与用户进行互动。

综上所述,ChatGPT API是一种强大的自然语言生成工具,可用于许多实际场景。使用ChatGPT API,开发人员可以轻松地生成高质量的对话文本,并在应用程序中使用这些文本来增强用户体验。无论您是开发人员还是普通用户,都可以受益于这个强大的工具。

4.4 智能对话简易实现

OpenAI Python 库提供了从以 Python 语言编写的应用程序对 OpenAI API 的便捷访问。它包括一组预定义的 API 资源类,这些类从 API 响应动态初始化自己,这使其与各种版本的 OpenAI API 兼容。

这里,我们先安装openai包,执行命令如下所示:

pip install openai

然后,同样是我需要申请好我们的密钥,实现代码如下所示:

import openai
import os

# 设置OpenAI API访问密钥
openai.api_key = "OPENAI_API_KEY"

# 调用ChatGPT API生成对话文本
response = openai.Completion.create(
    engine="davinci",
    prompt="Hello, how are you today?",
    max_tokens=50,
    n=1,
    stop=None,
    temperature=0.5,
)

# 从响应中提取生成的对话文本
text = response.choices[0].text.strip()

# 打印生成的对话文本
print(text)

执行结果如下所示:

以上代码使用os模块从环境变量中获取OpenAI API访问密钥。然后,使用openai包的Completion.create()方法调用ChatGPT API生成对话文本。与之前的示例代码类似,我们可以指定引擎、提示、最大标记数、生成数量、停止条件和温度等参数。最后,我们从响应中提取生成的对话文本,并将其打印到控制台上。

使用openai包,还可以轻松地调用其他OpenAI API,例如GPT-3、DALL-E、CLIP等。OpenAI还提供了许多示例代码和文档,以帮助开发人员快速入门并使用这些API。

综上所述,OpenAI的ChatGPT API和openai包为开发人员提供了方便快捷的自然语言生成工具。使用这些工具,开发人员可以轻松地生成高质量的对话文本,并将其集成到各种应用程序中,从而提高用户体验和效率。如果您是一名开发人员,建议您考虑使用这些工具来增强您的应用程序。

5.总结

在ChatGPT的实际应用中,有许多技术和工具可以帮助我们更好地使用它,以下是一些实战经验和技巧:

1.数据准备

在使用ChatGPT之前,需要准备好相关的数据。数据的质量和数量对于ChatGPT的性能影响很大。数据应该具有代表性和丰富性,覆盖尽可能多的话题和场景。同时,还需要进行数据清洗和预处理,去除无用的噪声和干扰,提高数据的质量。

2.模型训练

在模型训练方面,需要选择合适的模型和参数,以及相应的训练策略。不同的模型和参数组合会对模型性能产生不同的影响。例如,在对话生成任务中,可以使用基于序列到序列模型的ChatGPT模型,同时使用预训练模型和微调模型相结合的训练策略,以提高模型的性能和泛化能力。

3.对话生成

在对话生成方面,需要注意生成的内容是否合理、准确和流畅。可以根据用户提供的输入,生成相应的回复,并根据用户的反馈进行相应的调整和优化。例如,在智能客服场景中,可以通过ChatGPT生成回复,同时根据用户的满意度和反馈进行实时调整和优化,提高客服的效率和质量。

4.模型评估

在使用ChatGPT的过程中,需要对模型进行评估和优化,以提高模型的性能和可靠性。评估指标包括生成的准确率、流畅性、多样性等,可以使用人工评价、自动评价和在线测试等方法进行评估。同时,还可以通过对模型参数的调整和优化,进一步提高模型的性能和泛化能力。

总的来说,ChatGPT是一种非常有用和强大的技术,可以帮助我们实现自然、流畅、智能的对话和交流。在实际应用中,需要根据具体的场景和任务进行相应的选择和优化,同时还需要注意安全性和可靠性问题。随着技术的不断发展和完善,我们相信ChatGPT将会在更多的领域和场景中发挥出它的价值和作用。

到此这篇关于一文带你了解ChatGPT API的使用的文章就介绍到这了,更多相关ChatGPT API内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • 使用ChatGPT来自动化Python任务

    目录 1.概述 2.内容 2.1 使用ChatGPT来绘制线性回归 2.2 使用Python给微信发信息 2.3 使用Python发送电子邮件 2.4 使用Python开发一个爬虫程序 3.总结 1.概述 最近,比较火热的ChatGPT很受欢迎.今天,笔者为大家来介绍一下ChatGPT能做哪些事情. 2.内容 ChatGPT是一款由OpenAI开发的专门从事对话的AI聊天机器人.它的目标是让AI系统更加自然的与之交互,但它也可以在我们编写代码的时候提供一些帮助. 2.1 使用ChatGPT来绘制

  • chatgpt-api使用指南详解教程【官方泄露版】

    目录 1.安装chatgpt-api 2.chatgpt-api使用方法 3.使用演示程序 chatgpt-api是 OpenAI ChatGPT 的非官方的 Node.js 包装器. 包括 TS 类型定义. chatgpt-api不再需要任何浏览器破解——它使用泄露出来的OpenAI官方ChatGPT 在后台使用的模型. 推荐:使用 NSDT场景设计器 快速搭建 3D场景. 你可以使用它开始构建由 ChatGPT 支持的项目,例如聊天机器人.网站等… import { ChatGPTAPI }

  • vscode使用chatGPT 的方法

    目录 vscode使用chatGPT 一.下载chatPGT 二.使用 三.现在来看看它写的怎样 vscode使用chatGPT 一.下载chatPGT 在拓展中找到chatGPT,我这里下载的是中文版 二.使用 1.使用快捷键 ctrl+shift+p进行查找 chatGPT 2.点击请输入问题 3.输入你的问题,回车,这样它就会进行代码的编写 4.等一会儿就会给你结果啦 三.现在来看看它写的怎样 生成的代码 import smtplib # 设置发送方的邮件服务器和端口号 smtp_serv

  • 手把手教你在Python里使用ChatGPT

    目录 前言 知识点 实现 代码 后话 前言 近来chatGPT挺火的,也试玩了一下,确实挺有意思.这里记录一下在Python中如何去使用chatGPT. 本篇文章的实现100%基于 chatGPT,我是搬运工无疑了!!! 本片文章比较简单. 知识点 pip install openai 看看 chatGPT的表现: 使用python编写一段发送网络请求的代码 python如何md5 也有抽风的表现: 小明妈妈大小明20岁,20年后小明妈妈大小明多少岁? 一个蛋糕切成8块我吃不完,切成4块刚刚好?

  • ChatGPT在IDEA中使用的详细过程

    目录 安装 1.Settings 2. Plugins>MarketPlace 3.搜索chatgpt并安装(本人已安装) 配置 URL 设置 默认 官方源 自定义 Cloudflare 网络连接设置 读取超时 链接超时 使用 安装 下载最新版 并且手动安装: Settings/Preferences > Plugins > Marketplace > Install plugin from disk... 1.Settings 2. Plugins>MarketPlace

  • 一文带你了解ChatGPT API的使用

    目录 1.概述 2.内容 2.1 ChatGPT优点 2.2 ChatGPT的应用场景 2.3 ChatGPT的发展前景 3.API应用 4.API代码实现 4.1 Python实现 4.2 JavaScript实现 4.3 Java实现 4.4 智能对话简易实现 5.总结 1.数据准备 2.模型训练 3.对话生成 4.模型评估 1.概述 随着人工智能技术的不断发展,越来越多的AI产品被应用到各个领域,其中最具代表性的莫过于人工智能语言模型.语言模型是一种可以通过学习大量语言数据来预测文本或语音

  • 一文带你掌握Pyecharts地理数据可视化的方法

    本文主要介绍了Pyecharts地理数据可视化,分享给大家,具体如下: 一.Pyecharts简介和安装 1. 简介 Echarts 是一个由百度开源的数据可视化,凭借着良好的交互性,精巧的图表设计,得到了众多开发者的认可.而 Python 是一门富有表达力的语言,很适合用于数据处理.当数据分析遇上数据可视化时,pyecharts 诞生了. 简洁的 API 设计,使用如丝滑般流畅,支持链式调用 囊括了 30+ 种常见图表,应有尽有 支持主流 Notebook 环境,Jupyter Noteboo

  • 一文带你了解vue3.0响应式

    目录 使用案例 reactive API相关的流程 reactive createReactiveObject 创建响应式对象 mutableHandlers 处理函数 get函数 get函数的的调用时机 track 收集依赖 set函数 trigger 分发依赖 get和副作用渲染函数关联 副作用渲染函数的执行过滤 结尾 我们知道Vue 2.0是利用Ojbect.defineProperty对对象的已有属性值的读取和修改进行劫持,但是这个API不能监听对象属性的新增和删除,此外为了深度劫持对象

  • 一文带你掌握Java8强大的StreamAPI

    目录 Stream 概述 Stream 实例化 1.方式一:通过集合 2.方式二:通过数组 3.方式三:通过Stream的of() 4.方式四:创建无限流 Stream 中间操作 1.筛选与切片 2.映射 3.排序 Stream 终止操作 1.匹配与查找 2.归约 3.收集 Stream 概述 Stream API ( java.util.stream) 把真正的函数式编程风格引入到Java中.这是目前为止对Java类库最好的补充,因为Stream API可以极大提供Java程序员的生产力,让程

  • 调用无文档说明的 Web API过程描述

    目录 第一步:打开开发者工具,找一个 JSON 响应 第二步:复制为 cURL 第三步:去掉不相关的请求头 第四步:在 Python 中发请求 运行结束 (理论上)适用于所有场景 问题 1:会话 cookie 过期 问题 2:滥用 请记住所有人都可以访问你没有文档说明的 API 大家好!几天前我写了篇 小型的个人程序 的文章,里面提到了调用没有文档说明的“秘密” API 很有意思,你需要从你的浏览器中把 cookies 复制出来才能访问. 有些读者问如何实现,因此我打算详细描述下,其实过程很简单

  • 一文带你玩转Java异常处理

    目录 1.前言 2. Exception 类的层次 2.1 Exception 类的层次简介 3. Java 内置异常类 3.1 Java 内置异常类简介 3.2 非检查异常类举例 3.3 检查性异常类表 4. 异常方法 4.1 Throwable 类的主要方法 5. 捕获异常 5.1 捕获异常简介 5.2 try/catch语法如下 5.3 多重捕获块语法说明 6. throws/throw 关键字 6.1 throws/throw 关键字简介 6.2 代码实例 7. finally关键字 7

  • 一文带你搞懂Java中的泛型和通配符

    目录 概述 泛型介绍和使用 泛型类 泛型方法 类型变量的限定 通配符使用 无边界通配符 通配符上界 通配符下界 概述 泛型机制在项目中一直都在使用,比如在集合中ArrayList<String, String>, Map<String,String>等,不仅如此,很多源码中都用到了泛型机制,所以深入学习了解泛型相关机制对于源码阅读以及自己代码编写有很大的帮助.但是里面很多的机制和特性一直没有明白,特别是通配符这块,对于通配符上界.下界每次用每次百度,经常忘记,这次我就做一个总结,加

  • 一文带你深入剖析Java线程池的前世今生

    目录 由线程到线程池 线程在做什么 为什么需要线程池 线程池实现原理 总结 由线程到线程池 线程在做什么 灵魂拷问:写了那么多代码,你能够用一句话简练描述线程在干啥吗? public class Demo01 {   public static void main(String[] args) {     var thread = new Thread(() -> {       System.out.println("Hello world from a Java thread"

  • 一文带你了解Python枚举类enum的使用

    目录 简介 初试 遍历 可哈希 访问成员 唯一枚举值 自动枚举值 比较运算 功能性API IntEnum IntFlag Flag 简介 枚举是与多个唯一常量绑定的一组符号 因为枚举表示的是常量,建议枚举成员名用大写 IntEnum 便于进行系统交互 初试 from enum import Enum class Color(Enum): RED = 1 GREEN = 2 BLUE = 3 print(Color.RED) # Color.RED print(repr(Color.RED)) #

  • 一文带你了解Java中IO流与Guava的使用

    目录 Guava IO 分类 常用的流 示例 Guava中的IO 其他 结束语 Guava IO 日常系统交互中,文件的上传下载都是常见的,一般我们会通过jdk提供的IO操作库帮助我们实现.IO指的是数据相对当前操作程序的入与出,将数据通过 输出流从程序输出,或者通过输入流将数据(从文件.网络.数据等)写入到程序,这里的IO指的是基于流作为载体进行数据传输.如果把数据比作合理的水,河就是IO流,也是数据的载体. Java为我们提供了非常多的操作IO的接口与类,帮助开发者实现不同源间的数据传输,比

随机推荐