Tag: 比较

比较两个文本文件的最快方法是什么,不将移动的行计算为不同

我有两个文件非常大,每个文件50000行。 我需要比较这两个文件并确定更改。 但是,如果一条线存在于不同位置,则不应该显示为不同。 例如,考虑一下 文件A.txt xxxxx yyyyy zzzzz 文件B.txt zzzzz xxxx yyyyy 所以如果这是文件的内容。 我的代码应该输出为xxxx(或xxxx和xxxxx)。 当然,最简单的方法是将文件的每一行存储在一个 List 并与其他人比较 List. 但这似乎需要花费很多时间。 我也尝试在java中使用DiffUtils。 但它不会将不同行号中的行识别为相同。 那么还有其他算法可以帮助我吗?

如何检查char数组是否有空单元格,以便在其中打印0?

码: public void placeO(int xpos, int ypos) { for(int i=0; i<3;i++) for(int j = 0;j<3;j++) { // The line below does not work. what can I use to replace this? if(position[i][j]==' ') { position[i][j]='0'; } } }

Java中的双重比较技巧

C ++允许您将两个整数比较组合在一起进行范围检查,例如 (unsigned)X < (unsigned)Upper 当返回时返回true 0 <= X < Upper Java语言没有无符号类型。 您是否看到了一种获得相同效果的方法,使用单一比较而不是太多开销? 更新 : 从@Bathsheba的评论来看,char类型是无符号的16位并且适合我的目的,因为我的整数实际上在短裤的范围内。 对于简单的问题,这个问题仍然存在。 可能是(X | (Upper – 1 – X)) >= 0 ,它允许30位的范围。

如何在Java中比较字符串与枚举类型?

我有一份美国所有州的枚举列表如下: public enum State { AL, AK, AZ, AR, …, WY } 在我的测试文件中,我将从包含状态的文本文件中读取输入。 由于它们是字符串,我如何将它与枚举列表的值进行比较,以便为我设置的变量赋值: private State state; 我知道我需要通过枚举列表。 但是,由于值不是字符串类型,您如何比较它? 这就是我盲目打字的原因。 我不知道它是否正确。 public void setState(String s) { for (State st : State.values()) { if (s == State.values().toString()) { s = State.valueOf(); break; } } }

为什么Collections.max()不返回String集合的实际最大值?

ArrayList dirNo = new ArrayList(); dirNo.add(“1”); dirNo.add(“2”); dirNo.add(“3”); dirNo.add(“4”); dirNo.add(“5”); dirNo.add(“6”); dirNo.add(“7”); dirNo.add(“8”); dirNo.add(“9”); dirNo.add(“10”); dirNo.add(“11”); System.out.println(“max : ” + Integer.parseInt(Collections.max(dirNo))); 执行上述代码后,打印9作为输出。 但实际上最大值应该是11 。 为什么我最多得9 ?

使用compareTo方法和数组按名称和测试分数对学生进行排序

我需要使用类似的interfact和compareTo方法按字母顺序对学生列表进行排序,然后按测试分数排序。 我正在努力让这个在我的应用程序中工作。 需要从文本文件中读取名称列表。 我不知道我的教授使用的文本文件中会有多少名称,除了它将小于100.我还应该在底部显示成绩的平均值以及在任何旁边写一条消息比平均水平低15分的学生。 我还没有真正了解写作消息部分,因为我目前仍然坚持要打印和排序的名称和分数。 文本文件应如下所示: Steelman Andrea 95 Murach Joel 98 Lowe Doug 82 Murach Mike 93 这就是我到目前为止……如果有人能给我一点方向,我会很感激。 谢谢。 package chapt11; import java.io.FileReader; import java.util.Arrays; importjava.util.Scanner; public class CH11AS8App { /** * @param args */ public static void main(String[] args) throws Exception { System.out.println(“Welcome to the Student Scores Application.”); System.out.println(); Scanner aScanner = new […]

Firebird vs Java的HSQLDB

我想在java中写一个小的(5-6桌)桌面应用程序。我想使用Firebird 2.1。 数据库。但我用Google搜索并看到HSQLDB。我想在firebird和hsqldb之间做出决定:) 那么我必须使用哪个数据库?

比较java中相同数组的元素

我想比较同一个数组的元素。 这意味着我想要将0元素与每个其他元素进行比较,将1元素与每个其他元素进行比较,依此类推。 问题是它没有按预期工作。 。 我做的是我有两个for循环,从0到array.length-1 ..然后我有一个if语句如下:if(a [i]!= a [j + 1]) for (int i = 0; i < a.length – 1; i++) { for (int k = 0; k < a.length – 1; k++) { if (a[i] != a[k + 1]) { System.out.println(a[i] + " not the same with " + a[k + 1] + […]

比较generics类型Java

我在比较generics类型时遇到问题。 在C#i中,我总是做类似的事情: class Element where T : IComparable 。 我的问题是它如何用java编写?

HashSet’add’方法调用何时等于?

我在HashSet比较中做了这个测试,并且没有调用 equals 当farAway = false时,我想考虑等于(检查两个点距离的函数) 完全可编译的代码,你可以测试它,并告诉为什么在这个例子中没有调用equals。 public class TestClass{ static class Posicion { private int x; private int y; @Override public boolean equals(Object obj) { if (obj == null) { return false; } if (getClass() != obj.getClass()) { return false; } final Posicion other = (Posicion) obj; if ( farAway(this.x, other.x, this.y, other.y,5)){ return false; […]