我想澄清一下我是否理解正确:
== - >是参考比较,即两个对象都指向相同的内存位置.equals() - >计算对象中值的比较我的理解是正确的吗?
我喜欢Java有一个Map,你可以在其中定义地图中每个条目的类型<String, Integer>.
我正在寻找的是一种集合,其中集合中的每个元素都是一对值.对中的每个值都可以有自己的类型(如上面的String和Integer示例),它是在声明时定义的.
该集合将保持其给定的顺序,并且不会将其中一个值视为唯一键(如在地图中).
基本上我希望能够定义类型的ARRAY <String,Integer>或任何其他2种类型.
我意识到我可以创建一个只有2个变量的类,但这看起来过于冗长.
我也意识到我可以使用2D数组,但由于我需要使用不同的类型,我必须使它们成为OBJECT数组,然后我必须一直投射.
我只需要在集合中存储对,所以每个条目只需要两个值.如果没有上课路线,这样的事情会存在吗?谢谢!
Java中的Hashtable将受益于具有元组结构的值.我可以在Java中使用哪种数据结构来做到这一点?
Hashtable<Long, Tuple<Set<Long>,Set<Long>>> table = ...
Run Code Online (Sandbox Code Playgroud) 我试图通过java xmlrpc传递python元组.这是我正在使用的库: XMLPRC Java Libray
我在服务器和api上使用odoo框架.我想传递看起来像的参数:
[(4,7),(4,8)]
我能够通过以下结构:
[[4,7],[4,8]]
这显然是数组内部的数组:
new Object[]{new Object[]{4,7},new Object[]{4,8}}
Run Code Online (Sandbox Code Playgroud)
问题是java中没有元组.我吸收的是如何改变这种结构:
这个[4,8]到这个(4,8)
它是某种序列化问题,不知道如何解决它并传递预期的python结构.
我是java的新手,我想存储一对双打的数组.我的代码看起来像这样:
import java.util.ArrayList;
import java.util.Map.Entry;
List<Entry<Double, Double>> values = new ArrayList<>();
Entry<Double, Double> pair;
// set pair values:
// pair.setKey(0.5); // this method does not exists
// pair.setValue(3.6);
values.add(pair);
Run Code Online (Sandbox Code Playgroud)
如何初始化pair变量?是否有更好的结构来存储我的双打数组?
一些上下文:我正在解析一个具有account1和account2作为int类型的会计分类帐.每个都是[0,99999]范围内的数字.我有很多组合需要考虑.
理想情况下,我想使用类似的东西
switch (account1, account2){
case (1,1):
/*account1 is 1, account2 is 1*/
case (2,1):
/*account1 is 2, account2 is 1*/
}
Run Code Online (Sandbox Code Playgroud)
等等.(我只需要考虑大约20种可能的组合).
有没有办法在Java中实现这一目标?
我已经考虑过这个问题在java中存储数字对
并且可以建立一个IntPair班级.也许如果我定义bool equals那么我可以switch在一个实例上,以类似的方式你可以打开java.lang.String.