Tag: 类型

为什么Java不允许转换布尔 – > Int?

我想知道为什么Java不允许从布尔值转换为int,如下所示: boolean foo = true; int bar = (int)foo; 这可以在一行代码中完成,例如, bar = foo ? 1 : 0; 但似乎更好,更容易阅读的方式是允许类型转换,如double和int 。 为什么Java不包含此function?

无法从类型对象转换为long

我有一个名为table的哈希table 。 类型值很long 。 我正在使用.values()获取值。 现在我想访问这些值。 Collection val = table.values(); Iterator itr = val.iterator(); long a = (long)itr.next(); 但是当我试图得到它时,它会给我错误,因为我无法从类型object转换为long 。 我怎么能绕过它呢?

在不指定对象类型的情况下创建ArrayList时,在添加第一个对象时是否自动创建它?

例如,而不是做 ArrayList variableName; 你做 ArrayList variableName; 然后你添加一个“ClassName”类型的对象 variableName.add(objectName); 会自动将数组的类型设置为 ArrayList ?

Javagenerics类型擦除方法参数

我从Joshua Bloch给出的谷歌I / O益智游戏中得到了这个。 这是代码 public class Glommer { String glom(Collection obj){ String result = “”; for(Object o : obj){ result += o; } return result; } int glom(List ints){ int result = 0; for(int i : ints){ result += i; } return result; } public static void main(String args[]){ List strings = Arrays.asList(“1”, “2”, […]

具有对象类型的Jackson JSON列表

我必须从对象列表中序列化JSON。 生成的JSON必须如下所示: { “status”: “success”, “models”: [ { “model”: { “id”: 23, “color”: “red” } }, { “model”: { “id”: 24, “color”: “green” } } ] } 当我简单地序列化时,我错过了类型/键“模型”: List list = new ArrayList(); // add some new Model(…) Response r = new Response(“success”, list); // Response has field “models” 相反,我得到这个: { “status”: “success”, “models”: [ […]

列表是原始类型。 应参数化对generics类型List 的引用

下面是我的语法 List synchronizedpubliesdList = Collections.synchronizedList(publiesdList); 我收到的语法错误: List is a raw type. References to generic type List should be parameterized. 请提出解决方案。

如何检查java.lang.reflect.Type是否为Enum

我想检查java.lang.reflect.Type实例是否表示Emum对象。 我可以使用==比较来检查它是否是特定类的实例,例如: type == String.class // works 但这似乎不适用于Enum类: type == Enum.class // doesn’t work …这是有道理的,因为实例将是一个特定的枚举,但我想检查该类型是否适用于任何枚举。 有人可以向我解释如何判断Type是否是枚举请

java为什么要将equals方法输入参数设为Object

我正在阅读一本关于数据结构的书。 目前我在图表上,下面的代码是图表的顶点部分。 class Vertex{ //bunch of methods public boolean equals(Object o){ //some code } } 当我尝试实现这个equals方法时,我的编译器抱怨没有检查参数的类型,只是允许发送任何对象。 对我来说,为什么该参数不应该是Vertex而不是Object,这似乎有点奇怪。 有没有理由为什么作者这样做或者这是一个错误或过时的例子?

Spring Hibernate Template执行方法返回Oracle上的计数查询的对象类型是什么?

当与Oracle数据库一起运行时,以下Spring Hibernate Template (Spring 2.5和Hibernate 3.3.2GA)代码返回的对象的运行时类型是什么,SQL查询是一个计数查询,如select count(*) from table ? String sql = “select count(*) from table”; BigDecimal count = (BigDecimal) hibernateTemplate.execute( new HibernateCallback() { public Object doInHibernate(Session session) throws HibernateException { SQLQuery query = session.createSQLQuery(sql); return (BigDecimal) query.uniqueResult(); }}); return count; 此代码抛出以下exception: javax.ejb.EJBException: EJB Exception: : java.lang.ClassCastException: java.math.BigDecimal cannot be cast to [Ljava.lang.Object; at […]

Java:d​​ouble vs float

在另一个Bruce Eckel练习中,我编写的代码采用了一种方法,并在另一个类中更改了值。 这是我的代码: class Big { float b; } public class PassObject { static void f(Letter y) { yc = ‘z’; } //end f() static void g(Big z) { zb = 2.2; } public static void main(String[] args ) { Big t = new Big(); tb = 5.6; System.out.println(“1: tb : ” + tb); g(x); […]