java 小数如何转换成百分数_看似简单,在JAVA中如何将一个Object转换成Array
照例应该先说一下这个问题的来源,因为有需要我才解决他
(需要结果的请直接看最后)
那么这个问题的来源是这样的
在某个不知名的小屁项目中,使用了Hibernate,在查询的时候,使用hql查询,设置查询条件的时候使用 in 方式 ,比如:
select username from user where id in (:id)
然后设置参数的时候,hibernate要求这个参数为Array(Object[])或者List(Collection)
然后,因为我这个方法是通用的,所以这里的参数是用一个 Map 传入的,这就导致我在解析的时候必须将这个Object转换成Object[]
当然经过我的实践,这里的解决方式其实很简单
List l = new ArrayList(); l.add("ss1"); l.add("ss2"); l.add("ss3"); l.add("ss4"); l.add("ss5"); String[] sarr = new String[l.size()]; l.toArray(sarr); for (Object string : (Object[])sarr) { System.out.println(string); }
这个代码是能通过编译并且执行成功的
也就是说,我还转个皮啊。。。直接写就ok了……
如果是这样,那我还写这个文干啥?
所以,注意:
List l = new ArrayList(); l.add("ss1"); l.add("ss2"); l.add("ss3"); l.add("ss4"); l.add("ss5"); String[] sarr = (String[])l.toArray(); for (String string : sarr) { System.out.println(string); }
这段代码执行是不成功的!
在我机器上执行结果(jdk7):
Exception in thread "main" java.lang.ClassCastException: [Ljava.lang.Object; cannot be cast to [Ljava.lang.String;
List中不带参的toArray方法返回的是Object[],并且不能直接转成String[]
综上,String[]可以转成Object[],但是反过来就不行
现在回到我题目中的问题,上代码
第一步,确定传入的这个Object是一个Array
第二步,获取这个Array的长度
第三步,创建一个相同长度的数组(什么类型根据你的需求自定义,前提是能兼容,比如我的代码是写Object,不管是啥都能进去了)
第四步,挨个取出原来数组中的元素放到新的数组中
import java.lang.reflect.Array..............if (obj.getClass().isArray()) { int length = Array.getLength(obj); Object[] os = new Object[length]; for (int i = 0; i < os.length; i++) { os[i] = Array.get(obj, i); }}
以上
java 小数如何转换成百分数_看似简单,在JAVA中如何将一个Object转换成Array相关推荐
- java小数转换成百分数_在java中如何把小数转化成百分数
import java.text.NumberFormat; public class Test { //在java中如何把小数转化成百分数 public static void main(Strin ...
- java 小数如何转换成百分数_初等数学33-百分数
百分数定义 百分数与小数.分数的相互转换 百分数的定义 百分数是一个分母为100的比值,用百分号%表示.例如:用模型表示57%,即100个方格中有57个上色的格子 57/100 再如,25%,3%,1 ...
- 用java建立一个学生查询系统_一个简单的java学生寝室查询系统
本文实例为大家分享了java学生寝室查询系统的具体代码,供大家参考,具体内容如下 前端部分: index.html ahpu freshman dormitory inquiry html,body{ ...
- c语言小数如何转换成百分数,小数怎么转换成百分数
本文收集整理关于小数怎么转换成百分数的相关议题,使用内容导航快速到达. 内容导航: Q1:百分数怎样才能化成小数? 百分数与小数的互化,是小学数学基础知识点.百分数和小数都是特殊的分数,通过分数这个桥 ...
- 如何将小数转换成百分数
如何将小数转换成百分数 有朋友在群里问了这个问题,印象中Java没有这方面的函数(百分数转换为小数倒是有一个),而且直接乘以100会得出类似2.5999999999的结果,在网上也没有搜到类似的解决方 ...
- python将小数转换成百分数
处理数据得时候遇到一个小问题,如何用 pandas 将小数转换成百分数? 数据源是这样的,一个名为 "data.xlsx" 的 excel 文件,我需要将 "人员利用率& ...
- Java中int转Double再转换成百分数并应用在求同比昨日增长率
场景 求数据库中某记录的同比昨日增长率. 使用MyBatisPlus的selectCount方法返回的是int类型. 最后需要再转换成百分数表示. 实现 //查询昨日物流数SimpleDateForm ...
- Java中如何将一个数组分割成多个等长度的数组
Java中如何将一个数组分割成多个等长度的数组,最后剩下的为一个素组 先看图 分析数据 提取公式 分装代码 1.如下我们需求 最近朋友android项目中有一个需求如下: 这一个长集合[item0, ...
- java用对话框输出计算结果_动手动脑及java程序之用消息框进行数的运算
动手动脑自信成就人生 动手动脑1 ✿仔细阅读示例: EnumTest.java,运行它,分析运行结果? package demo; public class Test { public static ...
- hashcode的作用_看似简单的hashCode和equals面试题,竟然有这么多坑!
hashCode()方法和equals()区别与联系这到面试题,看似简单,根据以往面试星友的情况来说,绝大部分人都不能很好的回答出来,要么没有逻辑,想到一句就说一句,要么抓不住重点,答非所问.从这个很 ...
最新文章
- 深度学习数据集定义与加载
- python添加数组元素_Python列表附录–如何向数组添加元素,并附带示例说明
- Linux下多路复用IO接口epoll/select/poll的区别
- VS编辑器 设置智能提示
- Python+Flask+Echart+WordCloud:豆瓣爬虫项目的可视化数据
- Nginx的Gzip模块配置指令(一)
- [币严区块链]以太坊(ETH)Dapp开发入门教程之宠物商店领养游戏
- kibana-7.15.2 一分钟下载、安装、部署 linux
- centos6.0安装中文输入法
- 自由职业者和外包接单项目分析
- 服务器鉴别信息清楚,对服务器远程管理时鉴别信息未加密
- PAT A1029 Median (25 point(s)) __two pointers
- 计算机专业bs和cs,BS和CS的区别以及各自的优缺点
- 1.语音增强技术概述
- 【发际线大作战】C++学习记录之循环语句(发际线-1cm)
- 安装ROS中出现bash: /opt/ros/melodic/setup.bash: 没有那个文件或目录或者bash: /opt/ros/kinetic/setup.bash:的解决办法
- 澳大利亚博士后招聘|国立大学—太阳能电池方向
- 杨绛先生70句金句,请珍藏
- 分享30个优秀的网站导航设计案例
- 堪称货拉拉混合云数据库建设史,一场DBA团队的逆袭之战