Redian新闻
>
用 Copliot 帮你搞定 Java 样板代码

用 Copliot 帮你搞定 Java 样板代码

公众号新闻

点击上方“芋道源码”,选择“设为星标

管她前浪,还是后浪?

能浪的浪,才是好浪!

每天 10:33 更新文章,每天掉亿点点头发...

源码精品专栏

 
来源:technology.amis.nl

GitHub Copilot 帮我开发了一个处理 CSV 文件的 Java 应用程序。虽然不是什么很困难的任务,但在 Java 中总是感觉比在 Python 或 Node 中更难。由于这次有了 Copilot 的加持,只需要输入两个简单的命令,选择合适的工具建议点击“接受”就搞定了。

本文的 GitHub 仓库:

https://github.com/lucasjellema/my-codepilot-explorations

两个命令:

  • 加载 CSV 文件并将数据存储在映射列表中的类
  • 打印列名

下面开始介绍具体的步骤。

开始使用 Copilot

首先,要设置好 Copilot。在安装 Copilot 的 VS Code 扩展之后,按照说明文档注册并使用 Copilot(可免费试用 60 天)。我已经在 VS Code 中完成了 Copilot 的前几步,测试它是否可以成为我编程助手,一个真正意义上的“结对编程小伙伴”。

基于 Spring Boot + MyBatis Plus + Vue & Element 实现的后台管理系统 + 用户小程序,支持 RBAC 动态权限、多租户、数据权限、工作流、三方登录、支付、短信、商城等功能

  • 项目地址:https://github.com/YunaiV/ruoyi-vue-pro
  • 视频教程:https://doc.iocoder.cn/video/

组装 Java 应用程序以处理 CSV 数据文件

第一个试验是创建一个简单的 Java 应用程序,读取一个 CSV 文件并将数据转换为可以轻松处理的数据结构。感觉上似乎比 Node 或 Python 程序更复杂的任务。

要创建处理 CSV 文件的 Java 类

  • 在目录 javapilot 中创建名为 DataProcessor.java 的文件
  • 输入 // class for loading a csv file and storing data in a list of maps
  • 按下 Ctrl+Enter

从打开的 GitHub Copilot 选项中选择列表中的第一个解决方案。将光标定位在粘贴的代码末尾,按 Ctrl+Enter 获取如何继续的建议。

接受第一个建议:添加 getData 和 getColumnNames 方法以及 main 方法。

基于 Spring Cloud Alibaba + Gateway + Nacos + RocketMQ + Vue & Element 实现的后台管理系统 + 用户小程序,支持 RBAC 动态权限、多租户、数据权限、工作流、三方登录、支付、短信、商城等功能

  • 项目地址:https://github.com/YunaiV/yudao-cloud
  • 视频教程:https://doc.iocoder.cn/video/

创建带有 Country 数据的示例 CSV 文件

按照下面步骤创建包含 Country 数据的 CSV 文件:

  • 创建名为 data.csv 的文件
  • 输入 // records for countries with comma separated values for country name, language, capital and population
  • 按下 Ctrl+Enter

接受第一个解决方案。

需要进行一些后处理,以删除 // Example: ” and ” + newline

接受 Copilot 的建议,使用有列名的第一行。删除原始注释。

运行 Java 类。输出显示 Java 应用程序处理的 CSV 中的 Country 数据。

为了实现输出列名,需要执行以下步骤:

  • 在 main 方法的 for 循环之前添加注释 // print names of columns
  • 按 Ctrl+Enter
  • 接受第一个解决方案

再次运行 Java 类。现在列名也加进去了。

结论

在创建一个空的 Java 文件后,输入了以下两个建议:

// class for loading a csv file and storing data in a list of maps

// print names of columns

然后使用 Ctrl+Enter 三次来获取应用程序的代码片段,就可以成功地编写了一个 Java 程序,实现了我想要的功能。虽然我现在并不是一位熟练的 Java 程序员,但如果我自己完成这个任务的话,时间会更长(即使只是因为我显然在输入任何文本或代码时都会出现很多错别字),而且可能会导致更多的挫折感。

还需要在一个空的 csv 文件中添加一条附加的注释,以生成一个包含 Country 记录的示例 csv 文件:

// records for countries with comma separated values for country name, language, capital and population

在接受 Copilot 的提议之后,我需要对文件进行一些微调以便于使用。公平地说,Copilot 建议了一些来自 GitHub 的可用 CSV 文件。

注意:如果你执行的步骤和我一模一样,也可能会得到不同的结果。Copilot 在不断改进,给出的建议也会随着其演进以及使用环境(以及一些或许没有人完全理解的因素)而有所不同。

从 URL 下载 CSV 数据

让我们尝试创建一个 Java 应用程序,从 GitHub 获取其 CSV 文件,并执行与之前相似的处理。

  • 创建一个名为 DataProcessor2.java 的空文件
  • 添加注释 // class for downloading a csv file from GitHub and storing data in a list of maps
  • 按下 Ctrl+Enter
  • 从打开的 GitHub Copilot 选项卡中选择第三个解决方案

最终结果与之前的 DataProcessor 非常相似,有三个不同之处:

  1. 构造函数的输入参数称为 url。

  2. InputStreamReader 是由 URL 对象创建的。

  3. 构造函数传入的值应该是 URL 而不是文件位置。



欢迎加入我的知识星球,一起探讨架构,交流源码。加入方式,长按下方二维码噢

已在知识星球更新源码解析如下:

最近更新《芋道 SpringBoot 2.X 入门》系列,已经 101 余篇,覆盖了 MyBatis、Redis、MongoDB、ES、分库分表、读写分离、SpringMVC、Webflux、权限、WebSocket、Dubbo、RabbitMQ、RocketMQ、Kafka、性能测试等等内容。

提供近 3W 行代码的 SpringBoot 示例,以及超 4W 行代码的电商微服务项目。

获取方式:点“在看”,关注公众号并回复 666 领取,更多内容陆续奉上。

文章有帮助的话,在看,转发吧。

谢谢支持哟 (*^__^*)

微信扫码关注该文公众号作者

戳这里提交新闻线索和高质量文章给我们。
相关阅读
一篇带你搞定波士顿3W地区公立高中~Springboot代码混淆,别再让代码在线上进行裸奔走进制造重镇东莞:风险减量服务高质量发展的中国平安样板爆肝50道面试题,彻底帮你搞定多线程面试!祝贺Replit估值11.6亿美金【AMINO被投企业】AI代码生成平台Replit融资9740万美金不想黑头泛滥,油光满面,不到 40 元帮你搞定高质量Presentation,这几招帮你搞定!Hong Kong TV Company Deploys Stars as Salespeople on Taobao多线程如何实现事务回滚?一招帮你搞定!【圣地亚哥样板房出售】南加州Oceanside楼盘3卧公寓新房【2023.02.09】从简历、技巧到面试题精讲,带你搞定Java面试 | 极客时间章子怡在海南拼桌吃火锅,素颜样子真的很老,汪峰秃顶像60多岁的2023新版B1/B2 美国签证更新电子系统说明!手把手教你搞定!ChatGPT科研神器:论文翻译润色一键搞定,还能帮你读代码 | GitHub热榜40岁胡歌官宣生女!老婆不是江疏影,而是圈外女子,疑似某护士杭电小哥抢先搞定GPT读图功能,单卡就能实现新SOTA,代码已开源|CVPR2023讲座预告 | 老学长支招! 教你搞定选课、科研、GPA!工作中如何时间管理?让《搞定》帮你搞定煮屁话禅茶(八)屁用不顶暗访新盘样板房后,我们建议带上TAGPT-4 Copilot X震撼来袭!AI写代码效率10倍提升,码农遭降维打击集成GPT-4的编程神器来了,GitHub发布Copilot X:编程30年,突然就不需要手敲代码了?!国家一级演员杜雨露:死于癌症,只有6人参加葬礼,遗孀的行为让人泪目牛仔裤别乱买!4个选款教你搞定夏季穿搭,时髦又显瘦!谷歌又有新动作,colab集成Ai,帮你自动写代码!小费变味了Relate Anything来了!帮你搞定一切关系!银行危机蔓延 纽交所美航空股下跌6%!参院确认前洛杉矶市长出任美驻印大使!NASA最新登月服样板揭晓!加拉加斯全球“最危险”城市留学生到底怎么报税?超全加拿大报税指南,手把手教你搞定报税季!GPT-4 Copilot X 震撼来袭!AI 写代码效率 10 倍提升,码农遭降维打击样板间1.3米的床,实际只有1.19米,客户经理都懵了!销售人员:开发商定做,肯定不是常规尺寸只需72小时,全博士阵容帮你搞定的2023申请文书!同心智医与三博脑科医院联合打造脑科学技术临床应用新样板【步骤】微信全面支持注册第二个账号:手把手教你搞定[电脑] 欢迎莅临13代酷睿+40系显卡DIY装机样板间!二次元白色海景房
logo
联系我们隐私协议©2024 redian.news
Redian新闻
Redian.news刊载任何文章,不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。文章信息的合法性及真实性由其作者负责,与Redian.news及其运营公司无关。欢迎投稿,如发现稿件侵权,或作者不愿在本网发表文章,请版权拥有者通知本网处理。