将代码C#翻译成Java是否正确?
好的,我编辑了post-to-short版本,我想问一下c#:TryGetValue中的方法以及通过比较(IComparator)排序列表 我需要用Java编写这个方法,所以我写了这段代码。询问了解这两种语言的开发人员是否正确 1) 第一个问题——TryGetValue是不是用Java编写的方法也一样? c#: 到Java:将代码C#翻译成Java是否正确?,c#,java,sorting,compare,C#,Java,Sorting,Compare,好的,我编辑了post-to-short版本,我想问一下c#:TryGetValue中的方法以及通过比较(IComparator)排序列表 我需要用Java编写这个方法,所以我写了这段代码。询问了解这两种语言的开发人员是否正确 1) 第一个问题——TryGetValue是不是用Java编写的方法也一样? c#: 到Java: Node value; if (!nodes.containsKey(nodeId)){ return false; }else{
Node value;
if (!nodes.containsKey(nodeId)){
return false;
}else{
value = nodes.get(nodeId);
}
2) java中比较器的排序也一样吗
static int compareNodes(Node n1, Node n2)
{
if (n1.f > n2.f) return 1;
if (n1.f < n2.f) return -1;
return 0;
}
list.Sort(compareNodes);
静态int比较节点(节点n1、节点n2)
{
如果(n1.f>n2.f)返回1;
如果(n1.f
在Java中:
@Override
public int compare(Node nodeFirst, Node nodeSecond) {
if (nodeFirst.f > nodeSecond.f)
return 1;
if (nodeFirst.f < nodeSecond.f)
return -1;
return 0;
}
Collections.sort(nodeList, new OpenList());
@覆盖
公共整数比较(Node nodeFirst,Node nodeSecond){
if(nodeFirst.f>nodeSecond.f)
返回1;
if(nodeFirst.f
只要快速浏览一下您的代码,我就看不出它有什么真正的问题。但不能保证
如果您真的想确定,您可能应该创建单元测试来验证C#和Java中的行为。这将需要更多的工作,但比在此处依赖评论要安全得多。如果您只是想进行评论,而没有具体问题,则应在此处发布。不要询问有关翻译代码的问题。用目标语言编写代码,运行它,如果有任何问题,进行调试,并询问有关这些问题或编译器错误的具体问题,假设您已经搜索了原因。此外,我不确定这是否属于该网站,因为该网站提供的是完整的工作代码,也不清楚这段代码是否已经过测试(我对询问那里的代码翻译也有类似的担忧)。
@Override
public int compare(Node nodeFirst, Node nodeSecond) {
if (nodeFirst.f > nodeSecond.f)
return 1;
if (nodeFirst.f < nodeSecond.f)
return -1;
return 0;
}
Collections.sort(nodeList, new OpenList());