相关疑难解决方法(0)

什么是原始类型,为什么我们不应该使用它?

问题:

  • 什么是Java中的原始类型,为什么我经常听说不应该在新代码中使用它们?
  • 如果我们不能使用原始类型,它有什么替代方案,它是如何更好的?

java generics raw-types

617
推荐指数
13
解决办法
20万
查看次数

你什么时候使用Java的@Override注释?为什么?

使用Java @Override注释的最佳实践是什么?为什么?

使用@Override注释标记每个重写方法似乎有点过分.是否有某些编程情况需要使用@Override和其他不应该使用的@Override

java annotations

498
推荐指数
17
解决办法
88万
查看次数

Java ArrayList - 如何判断两个列表是否相等,顺序无关紧要?

我有两种ArrayList类型Answer(自制类).

我想比较两个列表,看看它们是否包含相同的内容,但是没有订单问题.

例:

//These should be equal.
ArrayList<String> listA = {"a", "b", "c"}
ArrayList<String> listB = {"b", "c", "a"}
Run Code Online (Sandbox Code Playgroud)

List.equals声明如果两个列表包含相同的大小,内容和元素顺序,则它们是相等的.我想要同样的事情,但没有订单问题.

有一个简单的方法吗?或者我是否需要执行嵌套for循环,并手动检查两个列表的每个索引?

注意:我无法将它们更改ArrayList为其他类型的列表,它们需要保留它.

java arraylist

118
推荐指数
10
解决办法
20万
查看次数

使用自定义排序顺序对对象的ArrayList进行排序

我希望为我的地址簿应用程序实现一个排序功能.

我想要排序ArrayList<Contact> contactArray.Contact是一个包含四个字段的类:姓名,家庭电话号码,手机号码和地址.我想要排序name.

如何编写自定义排序功能来执行此操作?

java sorting collections arraylist

114
推荐指数
4
解决办法
17万
查看次数

何时使用Comparable和Comparator

我有一个对象列表,我需要在一个字段上排序,比如分数.在没有多想的情况下,我编写了一个实现Comparator的新类,它可以执行任务并且可以正常运行.

现在回过头来看,我想知道我是否应该让我的类实现Comparable,而不是创建一个实现Comparator的新类.分数是对象将被订购的唯一字段.

  1. 我做过什么可以接受的做法?

  2. 是正确的方法"首先让类实现Comparable(对于自然顺序),如果需要替代字段比较,那么创建一个实现Comparator的新类"?

  3. 如果上面的(2)为真,那么它是否意味着只有在具有类实现Comparable之后才应该实现Comparator?(假设我拥有原始课程).

java comparable comparator

106
推荐指数
10
解决办法
11万
查看次数

Java Integer compareTo() - 为什么使用比较与减法?

我发现方法的java.lang.Integer实现compareTo如下:

public int compareTo(Integer anotherInteger) {
    int thisVal = this.value;
    int anotherVal = anotherInteger.value;
    return (thisVal<anotherVal ? -1 : (thisVal==anotherVal ? 0 : 1));
}
Run Code Online (Sandbox Code Playgroud)

问题是为什么使用比较而不是减法:

return thisVal - anotherVal;
Run Code Online (Sandbox Code Playgroud)

java optimization comparison integer overflow

78
推荐指数
3
解决办法
1万
查看次数

如何对Collection <T>进行排序?

我有一个通用的Collection,我试图找出如何排序其中包含的项目.我尝试了一些东西,但我不能让它们中的任何一个工作.

java sorting collections

51
推荐指数
5
解决办法
11万
查看次数

什么是Java的排序算法

java如何在内部对数据类型进行排序?为什么?如果可以提到具体的算法,那将是很好的

java sorting algorithm

11
推荐指数
3
解决办法
8754
查看次数

按字母顺序排列复杂对象的arraylist

我知道,Collections.sort(myArrayList)当它们是字符串时,可以按字母顺序对arraylist进行排序,但是当它们是更复杂的东西时,例如包含两个或更多变量的数据对象,包括a String.有没有办法对它们进行排序呢?

如果没有办法Collections那么我可以想象制作一个for循环或标准排序算法来查看每个对象的字符串变量并在数组中移动对象的索引.

但我想知道我是否忽视了一些Collections方法

java sorting collections object alphabetical

8
推荐指数
2
解决办法
2万
查看次数

我想在两个不同的参数上使用Collections.sort()两次

我有一个对象列表,我想使用不同的属性进行排序.

@Override
public int compareTo(Object obj)
{
    Field tab = (Field) obj;

    int objx = Integer.parseInt(tab.getX());
    // int objy = Integer.parseInt(tab.getY());

    int classX = Integer.parseInt(this.X);

    if (classX == objx)
      return 0;
    else if (classX > objx)
      return 1;
    else
      return -1;
}
Run Code Online (Sandbox Code Playgroud)

到目前为止我所拥有的:

Collections.sort(list1); // But using property1 to sort
Collections.sort(list1); // But using property2 to sort
Run Code Online (Sandbox Code Playgroud)

所以,在第一种情况下,我能够使用property1排序,但如何使用property2排序?我正在尝试使用不同的参数进行排序,但compareTo()只接受一个参数.

java sorting comparator

7
推荐指数
4
解决办法
2136
查看次数