在本文中,您将会了解到关于如果给定索引处存在ArrayList替换元素?的新资讯,同时我们还将为您解释list给指定索引赋值的相关在本文中,我们将带你探索如果给定索引处存在ArrayList替换元素?
在本文中,您将会了解到关于如果给定索引处存在ArrayList替换元素?的新资讯,同时我们还将为您解释list给指定索引赋值的相关在本文中,我们将带你探索如果给定索引处存在ArrayList替换元素?的奥秘,分析list给指定索引赋值的特点,并给出一些关于ArrayList al = new ArrayList();有什么区别?和ArrayList al = new ArrayList(0)?、ArrayList list = new ArrayList()在这个泛型为Integer的ArrayList中存放一个String类型的对象、arrays – 在给定索引处添加值而不删除、Arrays.asList()返回的ArrayList,这是Arrays里内嵌的一个私有静态类,而并不是java.util.ArrayList类的实用技巧。
本文目录一览:- 如果给定索引处存在ArrayList替换元素?(list给指定索引赋值)
- ArrayList al = new ArrayList();有什么区别?和ArrayList al = new ArrayList(0)?
- ArrayList list = new ArrayList()在这个泛型为Integer的ArrayList中存放一个String类型的对象
- arrays – 在给定索引处添加值而不删除
- Arrays.asList()返回的ArrayList,这是Arrays里内嵌的一个私有静态类,而并不是java.util.ArrayList类
如果给定索引处存在ArrayList替换元素?(list给指定索引赋值)
如果在给定索引的ArrayList中存在元素,该如何替换?
答案1
小编典典 arrayList.set(index i,String replaceElement);
ArrayList al = new ArrayList();有什么区别?和ArrayList al = new ArrayList(0)?
ArrayList al = new ArrayList();有什么区别?和ArrayList al = new ArrayList(0)?
答案1
小编典典如果您查看API,它将显示ArrayList()-构造一个初始容量为10的空列表。
ArrayList(int initialCapacity)-构造一个具有指定初始容量的空列表。
ArrayList list = new ArrayList()在这个泛型为Integer的ArrayList中存放一个String类型的对象
java面试要点---ArrayList list = new ArrayList(); 在这个泛型为Integer的ArrayList中存放一个String类型的对象。
1.刚刚看到的时候,也是很纳闷后来仔细看了下,java的反射机制;
2.这个可以通过java的反射机制来实现;
3.下面是一个例子:
package com.credream.refelect;
------------------------------------------------------------------------------------------------------------------
运行结果:
35
arrays – 在给定索引处添加值而不删除
myArray=(5 6 13 14)
例如,我想在索引2处添加9,我想得到这个:
myArray=(5 6 9 13 14)
而不是这个:
myArray=(5 6 9 14)
显然,做myArray [2] = 9不起作用.我可以添加它并将其他所有内容从1移到左边,但我正在尝试做一些优化的事情,所以如果有一个没有循环的解决方案,我想知道它:)
解决方法
n=2 myArray=( "${myArray[@]:0:n}" 9 "${myArray[@]:n}")
渐渐地,编写循环并不是更有效,但至少shell会在内部处理循环.
Arrays.asList()返回的ArrayList,这是Arrays里内嵌的一个私有静态类,而并不是java.util.ArrayList类
测试代码:
package array;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Iterator;
import java.util.List;
public class ArrayTest {
@SuppressWarnings("unused")
private static void asListTest(){
String[] a = {
"A", "B"};
List<String> list = Arrays.asList(a);
System.out.println(list.getClass().getName()); // java.util.Arrays$ArrayList
System.out.println(list.contains("A")); // true
list.add("C");
/*
* Jerry: 2016-01-15 9:09PM:
Arrays.asList() 会返回一个ArrayList,这是Arrays里内嵌的一个私有静态类,而并不是java.util.ArrayList类java.util.Arrays.ArrayList 有set(), get(), contains()方法,
但并不支持添加元素,所以大小是固定的,想要创建一个真正的ArrayList,你应该:
ArrayList<String> arrayList = new ArrayList<String>(Arrays.asList(arr));
*/
}
private static void removeInLoop() {
ArrayList<String> list = new ArrayList<String>(Arrays.asList("a", "b", "c", "d"));
// 下面这段代码会触发ConcurrentModificationException异常
// 不能在循环里直接修改一个集合类实例
/*for (String s : list) {
if (s.equals("a"))
list.remove(s);
}*/
// 应该用迭代器来完成
Iterator<String> iter = list.iterator();
while (iter.hasNext()) {
String s = iter.next();
if (s.equals("a")) {
iter.remove();
}
}
list.forEach(System.out::println);
}
public static void main(String[] args) {
// asListTest();
removeInLoop();
String[] a = {
"A", "B"};
// internal implementation: return new ArrayList<>(a);
List<String> list1 = Arrays.asList(a);
List<String> list2 = Arrays.asList(a);
List<String> list3 = Arrays.asList(a);
System.out.println(list1);
System.out.println(list2);
System.out.println(list3);
/* 这行代码会触发异常:
Exception in thread "main" java.lang.UnsupportedOperationException
at java.base/java.util.AbstractList.add(AbstractList.java:153)
at java.base/java.util.AbstractList.add(AbstractList.java:111)
at array.ArrayTest.main(ArrayTest.java:57)
*/
// list3.add("C");
System.out.println(list1.getClass().getCanonicalName());
}
}
本文分享 CSDN - 汪子熙。
如有侵权,请联系 support@oschina.cn 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一起分享。
今天关于如果给定索引处存在ArrayList替换元素?和list给指定索引赋值的讲解已经结束,谢谢您的阅读,如果想了解更多关于ArrayList al = new ArrayList();有什么区别?和ArrayList al = new ArrayList(0)?、ArrayList list = new ArrayList()在这个泛型为Integer的ArrayList中存放一个String类型的对象、arrays – 在给定索引处添加值而不删除、Arrays.asList()返回的ArrayList,这是Arrays里内嵌的一个私有静态类,而并不是java.util.ArrayList类的相关知识,请在本站搜索。
本文标签: