标签: arraylist

如何遍历字符串arraylist的arraylist?

我正在创建一个程序,允许用户与输入的文件进行交互.其中一个选项是显示文件.下面,我首先通过创建由线组成的arraylists,然后是由空格分隔的字符串分隔的内部arraylist,将文件存储到arraylist中.

Scanner sc = new Scanner(fileName);

    while (sc.hasNextLine()) {
        String line = sc.nextLine();
        String[] words = {};
        words = line.split(" ");
        ArrayList<String> lineArray = new ArrayList<String>();
        for (int i = 0; i < words.length; i++) {
            lineArray.add(words[i]);
        }
        fileByLine.add(lineArray);
    }
    sc.close();
Run Code Online (Sandbox Code Playgroud)

我正在尝试打印arraylist的内容,称为fileByLine,因为它们出现在文件中,但我不知道如何.有什么建议吗?

case '1':
for(int i = 0; i < fileByLine.size(); i++){
for(int j = 0; j < fileByLine.[i].size(); j++){
System.out.print(fileByLine[i][j]);
  } System.out.println("");
} break;
Run Code Online (Sandbox Code Playgroud)

java arrays iteration arraylist multidimensional-array

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

从ArrayList中删除元素,同时保留重复项(如果存在)

我需要从ArrayList中删除一些元素.我用的removeAll(List)方法.但问题是它也删除了重复项.我如何保留重复项?

考虑下面的例子 -

我有一个 List a1 = {2, 3, 4, 5, 2, 2, 3}

现在我有了另一个

List a2 = {2, 3}
Run Code Online (Sandbox Code Playgroud)

当我使用时,a1.removeAll(a2)我将a1 = {4, 5} 删除所有2和3的实例.

我需要的是a1 = {4, 5, 2, 2, 3} a2中存在的实例数应该从a1中删除.

我怎样才能做到这一点?

java arraylist

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

Java - 如何返回父方法?

我正在研究一种方法,如果密码匹配,应该将客人检查到房间.该方法还应返回该房间.

public Room checkIn(String password, String guestName) {
        assert (guestName != null);
        if (this.password.testWord(password) && roomList.stream().allMatch(r -> r.getGuest().getName() != guestName)) {
            roomList.forEach(r -> {
                if (r.getGuest() == null) {
                    new Guest(guestName).checkin(r);
                    return r;
                }
            });
        }
        return null;
    }
Run Code Online (Sandbox Code Playgroud)

Eclipse给出了一个关于在forEach()方法内返回的错误,因为forEach()不应返回任何内容.我正试图让checkIn()方法返回房间.有什么方法可以做到这一点吗?

java arraylist

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

ArrayList数据类型中的remove()方法究竟返回了什么

我在我的代码中使用list.remove()方法.我试图将返回的值作为参数传递给某个函数作为字符串,这样它既可以返回也可以删除对象.当我在for循环中打印它时,它只显示两个元素,它应该打印4.为什么会这样?

ArrayList<String> list = new ArrayList<>();
        list.add("a");
        list.add("b");
        list.add("c");
        list.add("d");

        for(int i=0;i<list.size();i++) {
            Log.d("Removed+++++++++++","++++"+list.remove(i));
           // queue.remove();
        }
Run Code Online (Sandbox Code Playgroud)

d /移除+++++++++++:++++一
d /删除+++++++++++:++++Ç

为什么它只打印a和c时应打印a,b,c,d?

java arraylist

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

如果for循环中的条件不断变化会发生什么?

以下代码块的结果是什么?

 ArrayList<Integer> myList = new ArrayList<Integer>();
   for (int i = 0; i < myList.size(); i++) {
   myList.remove(i);
    }
Run Code Online (Sandbox Code Playgroud)

提供答案是因为循环永远不会运行.

但是对于[-1,3,28,17,9,33]的输入,我得到[3,17,33]作为输出.这是什么意思?

java for-loop arraylist

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

如何使用RxJava2过滤Arraylist

用于过滤列表RxJava2.不知何故让它发挥作用.但问题是,它在回调中仅返回List中的一个项目Consumer(大小始终为1)

这是代码:

 Observable.fromIterable(arraylist)
                   .filter(new Predicate<BasicListModel>() {
                       @Override
                       public boolean test(BasicListModel model) throws Exception {
                           return true; //returning true for all items in filter
                       }
                   })
                   .toList()
                   .observeOn(Schedulers.computation())
                   .subscribe(new Consumer<List<BasicListModel>>() {
                       @Override
                       public void accept(List<BasicListModel> models) throws Exception {

                               Log.i("TAG"," size:"+models.size());

                       }
                   });
Run Code Online (Sandbox Code Playgroud)

我是RxJAva1或RxJava2的新手.

java android arraylist rx-java2

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

初始化后可以更改ArrayList的大小吗?

在我正在上课的练习考试中有以下问题:

对或错.初始化ArrayList后,无法更改ArrayList的大小.

立即看问题,我认为答案是错误的.如果初始化ArrayList,则可以继续向其添加无限元素,ArrayList将自动调整大小.但是,答案密钥声称答案是正确的.为什么会这样?幕后是否有一些我不理解的事情?

编辑:讲师告诉我,答案键实际上是一个错误.谢谢你的帮助.

java arraylist

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

在for循环中创建临时变量

我有一个for循环,旨在为arraylist添加6个值.

ArrayList<Integer> list = new ArrayList<Integer>();
for (int i = list.size(); i < list.size() + 6; i++){
    list.add(2 * i);
}
Run Code Online (Sandbox Code Playgroud)

现在这产生了一个无限循环.我的问题是我是否可以声明一个在整个for循环中持续存在的变量,那不是i或者我必须在循环之前声明它吗?如果我可以将它嵌入for循环中,我会把它放在哪里?

java for-loop arraylist

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

添加到List时抛出java.util.ConcurrentModificationException

当我运行这个时,我得到了一个java.util.ConcurrentModificationException尽管我使用iterator.remove();

显然我在循环中添加了数字6.这是否发生是因为迭代器"不知道"它在那里并且无论如何都要修复它?

public static void main(String args[]){

    List<String> list = new ArrayList<>();

    list.add("1");
    list.add("2");
    list.add("3");
    list.add("4");
    list.add("5");

    for(Iterator<String> it = list.iterator();it.hasNext();){
        String value = it.next();

        if(value.equals("4")) {
            it.remove();
            list.add("6");
        }

        System.out.println("List Value:"+value);
    }
}
Run Code Online (Sandbox Code Playgroud)

java iterator arraylist

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

将一个arraylist复制到kotlin中的另一个arraylist

我试图在Kotlin中将一个复制ArrayList到另一个ArrayList

第1名ArrayList:

private var leadList1: ArrayList<Lead> = ArrayList()
Run Code Online (Sandbox Code Playgroud)

第二名ArrayList:

val leadList2: ArrayList<Lead?>?
Run Code Online (Sandbox Code Playgroud)

我试着用addAll().leadList1.addAll(leadList2)

但它不起作用.

错误显示:

Required: Collection<Lead>
Found: kotlin.collections.ArrayList<Lead?>?
Run Code Online (Sandbox Code Playgroud)

arraylist kotlin

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