企业网站备案网站,网站接入服务提供单位名称,qq登录账号在线登录入口,网站开发哪家公司比较好哈喽#xff0c;本文即通过相近的试题#xff0c;看下最近爆火的科大讯飞星火大模型和 FuncGPT#xff08;慧函数#xff09;的编码能力有何区别#xff0c;给大家直观地对比。 开发过程中经常会遇到读取文件内容的情况#xff0c;需要【判断文件路径是目录还是文件】本文即通过相近的试题看下最近爆火的科大讯飞星火大模型和 FuncGPT慧函数的编码能力有何区别给大家直观地对比。 开发过程中经常会遇到读取文件内容的情况需要【判断文件路径是目录还是文件】及文件编码格式防止无法读取内容或乱码出现情况。 星火大模型生成代码示例如下
import java.io.File; public class Main { public static void main(String[] args) { System.out.println(checkPathType(your_file_path)); } public static int checkPathType(String filePath) { File file new File(filePath); if (file.exists()) { if (file.isDirectory()) { return 1; // directory } else if (file.isFile()) { return 0; // file } else { throw new IllegalArgumentException(The path is neither a directory nor a file); } } else { throw new IllegalArgumentException(The path does not exist); }
} FuncGPT慧函数生成代码示例如下
在产品界面输入以下指令
函数功能判断文件路径是目录还是文件返回1 目录0 文件
参数 1 参数名称filePath参数类型String参数描述源路径
返回值int
生成代码如下
// 类名FileUtil
// 函数名checkFileType
// 函数功能判断文件的路径是目录还是文件
// POM 依赖包无 import java.io.File; public class FileUtil { /** * 判断文件的路径是目录还是文件 * param filePath 源路径 * return 1 表示目录0 表示文件 */ public static int checkFileType(String filePath) { File file new File(filePath); // 创建 File 对象 if (file.isDirectory()) { // 判断路径是否为目录 return 1; // 返回 1 表示目录 } else if (file.isFile()) { // 判断路径是否为文件 return 0; // 返回 0 表示文件 } else { throw new IllegalArgumentException(Invalid file path); // 如果路径既不是目录也不是文件抛出异常 } }
} // 函数示例
// 判断文件的路径是目录还是文件示例
// 入参filePath源路径
// 出参result1 表示目录0 表示文件
// 调用示例
// String filePath C:\\Users\\username\\Desktop\\test.txt;
// int result FileUtil.checkFileType(filePath);
// System.out.println(result);
// 输出结果例如路径 C:\\Users\\username\\Desktop\\test.txt 是一个文件
// 则输出结果为0
仅用 14 秒FuncGPT慧函数就生成一个有着清晰代码注释和案例可读性更好的代码。
通过对比可以发现 讯飞星火大模型 慧函数 生成时间17 秒 生成时间14 秒 难以复用 代码中包含主函数这可能使得代码难以在其他项目中复用 支持复用更加模块化 将函数放在一个独立的工具类中更加模块化 代码可读性一般 代码注释和案例清晰可读性更好 总结在简单的需求场景下慧函数生成的代码支持复用更加模块化且可读性更佳。 二
以上是相对简单的功能需求接下来我们来一个在开发 ERP 或电商系统中经常会遇到内容加密生成签名展示页面列表等功能场景需要在 Java 程序中对 List 集合进行排序操作这个相对复杂功能需求。 星火大模型生成代码示例如下 import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import java.util.HashMap;
import java.util.List;
import java.util.Map; public class ListSort { public static void main(String[] args) { // 测试数据 ListMapString, Object list new ArrayList(); MapString, Object map1 new HashMap(); map1.put (name, 张三); map1.put(age, 20); list.add(map1); MapString, Object map2 new HashMap(); map2.put (name, 李四); map2.put(age, 25); list.add(map2); MapString, Object map3 new HashMap(); map3.put (name, 王五); map3.put(age, 22); list.add(map3); // 调用 sortList 方法进行排序 sortList(list, age, asc); } /** * 对 List 中的 Map 对象按照指定的字段进行排序 * param list List 对象 * param columns 排序字段名以 / 分隔 * param order 排序类别 asc 顺序desc 倒序 */ public static void sortList(ListMapString, Object list, String columns, String order) { if (list null || list.isEmpty() || columns null || columns.isEmpty()) { return; } String[] fieldArray columns.split(/); if (fieldArray.length ! 2) { return; } ComparatorMapString, Object comparator new ComparatorMapString, Object() { Override public int compare(MapString, Object o1, MapString, Object o2) { String key1 (String) o1.get(fieldArray[0]); String key2 (String) o2.get(fieldArray[0]); if (order.equalsIgnoreCase(asc)) { return key1.compareTo(key2); } else { return key2.compareTo(key1); } } }; Collections.sort(list, comparator); }
} 而使用 FuncGPT (慧函数) 只需在界面输入以下具体的需求及参数要求点击生成代码20 秒就可以生成拿来即用的代码了。 函数功能List 排序 参数 1参数名称list参数类型ListMapString, Object参数描述List 对象
参数 2参数名称columns参数类型String参数描述排序字段名以 / 分隔
参数 3参数名称order参数类型String参数描述排序类别 asc 顺序desc 倒序
返回值不为空值 FuncGPT (慧函数) 生成代码示例如下
// 类名ListSorter
// 函数名sortList
// 函数功能对 List 进行排序
// POM 依赖包
// dependency
// groupIdorg.apache.commons/groupId
// artifactIdcommons-lang3/artifactId
// version3.12.0/version
// /dependency import org.apache.commons.lang3.StringUtils; import java.util.Collections;
import java.util.Comparator;
import java.util.List;
import java.util.Map; public class ListSorter { /** * 对 List 进行排序 * param list List 对象 * param columns 排序字段名以 / 分隔 * param order 排序类别asc 顺序desc 倒序 * return 排序后的 List 对象 */ public static ListMapString, Object sortList(ListMapString, Object list, String columns, String order) { String[] columnArray columns.split(/); for (String column : columnArray) { if (StringUtils.isNotBlank(column)) { ComparatorMapString, Object comparator (o1, o2) - { Object value1 o1.get(column); Object value2 o2.get(column); if (value1 instanceof Comparable value2 instanceof Comparable) { int compareResult ((Comparable) value1).compareTo(value2); return order.equalsIgnoreCase(asc) ? compareResult : -compareResult; } return 0; }; Collections.sort(list, comparator); } } return list; }
} // 函数示例
// 对 List 进行排序示例
// 入参listList 对象
// columns排序字段名以 / 分隔
// order排序类别asc 顺序desc 倒序
// 出参sortedList排序后的 List 对象
// 调用示例
// ListMapString, Object list new ArrayList();
// MapString, Object map1 new HashMap();
// map1.put(name, John);
// map1.put(age, 25);
// MapString, Object map2 new HashMap();
// map2.put(name, Alice);
// map2.put(age, 30);
// list.add(map1);
// list.add(map2);
// String columns name/age;
// String order asc;
// ListMapString, Object sortedList ListSorter.sortList(list, columns, order);
// System.out.println(sortedList);
// 输出结果例如按照 name 字段升序排序age 字段升序排序排序后的 List 为[{nameAlice, age30}, {nameJohn, age25}]
// 则输出结果为[{nameAlice, age30}, {nameJohn, age25}] 通过对比我们不难发现 讯飞星火大模型 慧函数 生成时间29 秒 生成时间24 秒 无法处理多个字段的排序需求 只能处理按单个字段排序无法处理多个字段的排序需求 可以处理多个字段的排序需求 代码可读性一般 代码简洁可读性更好 总结慧函数生成的代码相对优势更大能够处理多个字段的排序需求且代码可读性更优。 AI 技术席卷千行百业的当下开发人员除了要掌握基本原理和方法外还要善用工具帮助自己。FuncGPT慧函数作为飞算 SoFlu 软件机器人的组成部分支持创建各种类型的函数。用户可以通过自然语言描述 Java 函数需求系统即时生成高质量、易读的 Java 函数代码。生成的代码可直接复制到 IDEA 中或者一键导入到 Java 全自动开发工具函数库中。为开发工程师的日常函数开发工作提供了巨大的便利。