1、数组转List
1 2 | String[] arr = new String[] { "str1" , "str2" }; List<String> list = Arrays.asList(arr); |
2、List转数组
这里的List以ArrayList为例,ArrayList的API提供了两种可供使用的函数。
第一种:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | toArray public Object[] toArray() Returns an array containing all of the elements in this list in proper sequence (from first to last element). The returned array will be "safe" in that no references to it are maintained by this list. (In other words, this method must allocate a new array). The caller is thus free to modify the returned array. This method acts as bridge between array-based and collection-based APIs. Specified by: toArray in interface Collection<E> Specified by: toArray in interface List<E> Overrides: toArray in class AbstractCollection<E> Returns: an array containing all of the elements in this list in proper sequence See Also: Arrays.asList(Object[]) |
第二种:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | toArray public <T> T[] toArray(T[] a) Returns an array containing all of the elements in this list in proper sequence (from first to last element); the runtime type of the returned array is that of the specified array. If the list fits in the specified array, it is returned therein. Otherwise, a new array is allocated with the runtime type of the specified array and the size of this list. If the list fits in the specified array with room to spare (i.e., the array has more elements than the list), the element in the array immediately following the end of the collection is set to null . (This is useful in determining the length of the list only if the caller knows that the list does not contain any null elements.) Specified by: toArray in interface Collection<E> Specified by: toArray in interface List<E> Overrides: toArray in class AbstractCollection<E> Parameters: a - the array into which the elements of the list are to be stored, if it is big enough; otherwise, a new array of the same runtime type is allocated for this purpose. Returns: an array containing the elements of the list Throws: ArrayStoreException - if the runtime type of the specified array is not a supertype of the runtime type of every element in this list NullPointerException - if the specified array is null |
示例:
1 2 3 4 5 | List<String> list = new ArrayList<String>(); list.add( "str1" ); list.add( "str2" ); int size = list.size(); String[] arr = (String[])list.toArray( new String[size]); //使用了第二种接口,返回值和参数均为结果 |
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY