标签: arraylist

使用升序将元素插入ArrayList,并且没有重复元素

我有一个家庭作业,我需要插入或添加新的元素ArrayList<Interger>与以下条件:

  1. 元素必须按升序排列.

  2. 没有重复的元素ArrayList<Integer>

  3. 插入方法在O(n)次运行.

这是我在添加新元素之前检查重复元素的insert方法.

    public void insert(int x){
            //effect: Check duplicate elements if not x to the elements;
                boolean found = false;
                if(super.size()!=0){
                    for(int i=0; i<super.size(); i++){
                        if(super.get(i)==x){
                            found = true;
                        }
                    }
                }
                if(found){ return; }
                else{ super.add(x);  }
        }
Run Code Online (Sandbox Code Playgroud)

我该怎么做?谢谢.

加成

这是我的类名InSetExtra

public class IntSetExtra extends ArrayList<Integer> {


    private static final long serialVersionUID = 1L;

    public IntSetExtra(){
        super();
    }

    public void insert(int x){
        //effect: Check duplicate elements if not …
Run Code Online (Sandbox Code Playgroud)

java arraylist

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

指定ArrayList的类型

在Java和Android中,我最终ArrayList<String>用于供应列表,因为我发现它们比标准更容易使用String[].我真正的问题,虽然此:

什么是<String>的部分ArrayList<String>叫什么?
如何创建类并使用<>[修饰符]?(我不知道它实际上叫什么,所以现在它是修饰符).

谢谢!

java arrays generics arraylist

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

在JSF托管bean中初始化List

我有一个关于POJO中List的初始化的问题,因为它遵循下一个代码:

public class Person {

 //other fields...
 private List<String> friends=new ArrayList<>();

     public List<String> getFriends() {
        return friends;
     }
     public void setFriends(List<String> friends) {
        this.friends = friends;
    }

}
Run Code Online (Sandbox Code Playgroud)

或者它是这样的更好,并在其他类中具有初始化(例如Bean(JSF))

public class Person {

 //other fields...
 private List<String> friends;

     public List<String> getFriends() {
        return friends;
     }
     public void setFriends(List<String> friends) {
        this.friends = friends;
    }

}
Run Code Online (Sandbox Code Playgroud)

所以我的问题是什么方法更好?

jsf arraylist java-ee-6 jsf-2

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

在 Kotlin 中将元素添加到列表开头的最佳方法是什么

如果我有一张这样的清单

 var foo = mutableListOf("John", "Wayne")
Run Code Online (Sandbox Code Playgroud)

如果我想在列表顶部添加一个元素,到目前为止我正在考虑两个选项。

第一的:foo.add(0, "Twyla")

第二:foo = (mutableListOf("Twyla") + foo).toMutableList()

我不知道上述两种选择在性能方面的表现如何,但一般推荐的方法是什么?

list arraylist kotlin

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

是否有充分的理由将 OpenJDK 代码中的以下 ArrayList 构造函数分为两种不同的情况?

例如,在 JDK17 中阅读 ArrayList 类的 OpenJDK 代码时

(https://github.com/openjdk/jdk17/blob/master/src/java.base/share/classes/java/util/ArrayList.java)

我偶然发现了以下构造函数:

public ArrayList(Collection<? extends E> c) {
    Object[] a = c.toArray();
    if ((size = a.length) != 0) {
        if (c.getClass() == ArrayList.class) {
            elementData = a;
        } else {
            elementData = Arrays.copyOf(a, size, Object[].class);
        }
    } else {
        // replace with empty array.
        elementData = EMPTY_ELEMENTDATA;
    }
}
Run Code Online (Sandbox Code Playgroud)

c.getClass()区分是或不是的原因是什么ArrayList.class?这个案子有必要分拆吗?

(我只是想理解 OpenJDK 类 ArrayList 发行版中的 Java 代码。)

java reflection constructor arraylist java-17

12
推荐指数
2
解决办法
290
查看次数

使用Comparators帮助比较float成员变量

我可以很好地比较字符串,但想知道如何对浮点数进行排名?

getChange()返回一个String.我希望能够降序排序.我怎样才能做到这一点?

更新:

package org.stocktwits.helper;

import java.util.Comparator;

import org.stocktwits.model.Quote;

public class ChangeComparator implements Comparator<Quote>
{
    public int compare(Quote o1, Quote o2) {
        float change1 = Float.valueOf(o1.getChange());
        float change2 = Float.valueOf(o2.getChange());

        if (change1 < change2) return -1;
        if (change1 == change2) return 0; // Fails on NaN however, not sure what you want
        if (change2 > change2) return 1;
    }
}
Run Code Online (Sandbox Code Playgroud)

我收到编译时错误:

This method must return a result of type int    ChangeComparator.java   
Run Code Online (Sandbox Code Playgroud)

java sorting arraylist comparable comparator

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

如何将嵌套的ArrayList分割为TabLayout的每个布局

我正在使用嵌套的ArrayList for Tablayout.ArrayList的每个元素都会填充每个Tab.标签计数根据父级arraylist的大小而变化.例如,当父ArrayList的大小为2时,选项卡数为2; 当大小3标签计数3..etc..为了解释这种情况很困难,我准备了expalantion图像..

图片1

此图像代表一般外观.我想用ArrayLists为每个元素填充这个TextViews

图2

此图像代表我的数据类型; 键和值ArrayList是嵌套的arraylist,它们在每个索引中包含arraylist.

图3 - 图像4 - 图像5

这个图像代表了tabLayouts过去的样子.我希望我的数据看起来像这个图像.

所以问题是PopUpDetailsAdapterPlanT Class;

当我使用下面的代码时,每行填充相同的项目.对于此示例,每行写入ArrayList的最后一个元素(位置 - 明尼苏达州)如何处理此问题.谢谢你的帮助

public class PopUpDetailsAdapterPlanT extends ArrayAdapter {
Context context;
private ArrayList<ArrayList<Object>> keys;
private ArrayList<ArrayList<String>> values;

    public PopUpDetailsAdapterPlanT(Context context, ArrayList<ArrayList<Object>> keys, ArrayList<ArrayList<String>> values) {
        super(context,R.layout.popupdetails_listview_simpleitem);
        this.keys = keys;
        this.values = values;
        this.context = context;
    }

    public View getView(int position, View convertView, ViewGroup parent) {

        View v = convertView;

        if (v == null) {
            LayoutInflater inflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
            v = …
Run Code Online (Sandbox Code Playgroud)

android arraylist android-arrayadapter android-tablayout

11
推荐指数
1
解决办法
562
查看次数

将给定String的唯一字母添加到List

我想在列表中添加一个字符串的字母,但我只想添加一次字母.例如,如果字符串是"HELLO AM CHRISTOS WHITE",则某些字母会出现多次,所以我希望它们只能添加一次.

我正在考虑两个for循环:

for (int i=0; i< str.length(); i++){
    for(int j=0; j< str.length(); j++){
        if (str.charAt(i) != str.charAt(j)) {
            myList.add(charAt(i));
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

但是这段代码不能避免重复.

java loops for-loop arraylist

11
推荐指数
2
解决办法
987
查看次数

PostgreSQL - 如何获取列列表中的元素数

这就是我的订单表的样子:

-----------------------------------------------------------
| id  | order
-----------------------------------------------------------
|1    |[{"order_quantity" : 2, "active" : TRUE, "price" : $100 }, {"order_quantity" : 4, "active" : FALSE, "price" : $200 }]
|2    |[{"order_quantity" : 2, "active" : TRUE, "price" : $170 }]
|3    |[{"order_quantity" : 2, "active" : TRUE, "price" : $120 }]
|4    |[{"order_quantity" : 2, "active" : TRUE, "price" : $150 }, {"order_quantity" : 3, "active" : TRUE, "price" : $200 }, {"order_quantity" : 5, "active" : TRUE, "price" : $200 …
Run Code Online (Sandbox Code Playgroud)

postgresql json arraylist multiple-columns

11
推荐指数
1
解决办法
7473
查看次数

从java中的数组中找出n个缺少的元素

我有一个带有一些整数的数组.说numbers={3,0,1}或者说numbers={9,6,4,2,3,5,7,0,1}.现在我必须找出数组中缺少的数字.根据这个例子,每组中只有一个缺失的数字.第1个错过2个,第2个错过8个.

我已经编码了.我的代码不仅从指定的集合中找出一个缺失的数字,它还可以从给定的集合中找出超过1个缺失的数字.

但如果同一组中缺少两个连续的数字,则无法找到.

My code
import java.util.Arrays;

public class Missing_number 
{
    public static void main( String args[] )
    {
        int numbers[]={9,6,4,5,7,0,1};
        Arrays.sort(numbers);
        int i=1;

        while ( i < numbers.length ) 
        {
            if ( numbers[i] - numbers[i-1] == 1 ) 
            {
            } 
            else 
            {
                System.out.println( "Missing number is " + ( numbers[i-1] + 1 ) );
            }
            i++;
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

我想是这样的,如果我能够在数组中追加第一个缺失的数字,然后开始搜索那么代码是什么样的?numbers={9,6,4,5,7,0,1}现在,这套已经缺少8个.现在我已从列表中终止了另外两个元素(2,3).输出:根据我的代码:2,8但是3也缺少但不显示.

我想,如果我能够在数字数组中追加2,那么它可能会更容易一些.但是我们都知道Java数组是不可变的,所以我们不能增加它的长度.

所以,也许我会使用List.但是在列表中number[0]=something不支持这种类型的索引.那么我怎么能继续呢.我使用列表还是仍然插入阵列?

所以我尝试用arraylist创建它.

Mycode(modified version from …
Run Code Online (Sandbox Code Playgroud)

java arrays algorithm arraylist

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