我想从列表中完全删除一个项目,下面是列表
var list = [{id: 1, match_number: 1, name: "match1"},
{id: 2, match_number: 2, name: "match2"},
{id: 3, match_number: 3, name: "match3"},
{id: 4, match_number: 4, name: "match4"},
{id: 5, match_number: 5, name: "match5"}]
Run Code Online (Sandbox Code Playgroud)
我想match_number从列表中完全删除,并希望实现像
var list = [{id: 1, name: "match1"},
{id: 2, name: "match2"},
{id: 3, name: "match3"},
{id: 4, name: "match4"},
{id: 5, name: "match5"}]
Run Code Online (Sandbox Code Playgroud)
下面是我获得单个项目结果的代码,但是我有一个数组,其中键给出了像['match_number','id'].在此基础上我想从主列表中删除项目.
我怎么解决这个问题?
//code for single item
var listitem = list.map((i) => {
const {match_number,...item} = i;
return item; …Run Code Online (Sandbox Code Playgroud) 当我尝试从列表中删除元素时removeIf(),它正在抛出UnsupportedOperationException
public class T {
public static void main(String[] args) {
String[] arr = new String[] { "1", "2", "3" };
List<String> stringList = Arrays.asList(arr);
stringList.removeIf((String string) -> string.equals("2"));
}
}
Run Code Online (Sandbox Code Playgroud)
有人可以帮助我理解为什么会发生这种情况,我该如何纠正这个问题?
当我将a的所有内容添加ArrayList到另一个时ArrayList,另一个ArrayList包含对第一个元素的引用ArrayList.因此,当我更改Lists 中的任何一个元素时,另一个元素中的相应元素List也会发生变化.这显然意味着addAll分配对新的引用List.
参考代码:
ArrayList<StringBuffer> a = new ArrayList<>();
a.add(new StringBuffer("1"));
a.add(new StringBuffer("2"));
a.add(new StringBuffer("3"));
ArrayList<StringBuffer> b = new ArrayList<>();
b.addAll(a);
System.out.println("Arralists" + " before: ");
System.out.println("A arraylist" + a.toString());
System.out.println("B arraylist" + b.toString() + "\n\n");
a.set(0, a.get(0).replace(0, 1, String.valueOf(4)));
System.out.println("Arralists after " + "updating a: ");
System.out.println("A arraylist" + a.toString());
System.out.println("B arraylist" + b.toString() + "\n\n");
Run Code Online (Sandbox Code Playgroud)
对应日志:
Arralists before:
A arraylist[1, 2, 3]
B …Run Code Online (Sandbox Code Playgroud) 我需要打印两个ArrayLists的每个元素.
我有这样的想法:
for ((String post : Post) && (String posted : Posted)) {
jTextArea1.append(Post + " : " +Posted "\n");
}
Run Code Online (Sandbox Code Playgroud) 我有一个方法,让我来创建一个HashMap从ArrayList通过获取AirbnbListing对象,然后在附近的名称与任何键进行比较HashMap.如果它还没有在hashmap中,我将它添加一个从1开始的计数器,如果它已经存在,我增加计数器.
这里有一个更有效的方法是我的代码:
public HashMap<String, Integer> sortHousesInNbrhood(ArrayList<AirbnbListing> priceRangeListing) {
HashMap<String, Integer> housesInNbrhood = new HashMap<>();
for (AirbnbListing listing : priceRangeListing) {
if (housesInNbrhood.isEmpty()) {
housesInNbrhood.put(listing.getNeighbourhood(), 1);
} else if (housesInNbrhood.containsKey(listing.getNeighbourhood())) {
housesInNbrhood.replace(listing.getNeighbourhood(), housesInNbrhood.get(listing.getNeighbourhood()) + 1);
} else {
housesInNbrhood.put(listing.getNeighbourhood(),1);
}
}
return housesInNbrhood;
}
Run Code Online (Sandbox Code Playgroud) 我正在尝试制作DnD字符生成器,对于其中的一部分,我需要有一个可由其他方法编辑的统计信息列表,因此我尝试在类级别添加它.我目前的代码是:
public class CharacterCreator extends Application
{
ArrayList<String> stats = new ArrayList<String>();
stats.add("STR");
stats.add("DEX");
stats.add("CON");
stats.add("INT");
stats.add("WIS");
stats.add("CHA");
public void start(Stage primaryStage)
{
Run Code Online (Sandbox Code Playgroud)
但是当我尝试运行它时,我在每个"添加"行上都会出现"标识符预期"错误.
我试图从Kotlin中的ArrayList中删除重复项.首先,我从其他地方获取sortedNews然后我将它添加到名为newsItems的列表中,然后我尝试删除重复项,但重复项仍然存在.我在这做错了什么
sortedNewsItems = nsItems!!.sortedWith(compareByDescending({it!!.timeStamp}))
newsItems?.addAll(sortedNewsItems!!)
newsItems?.distinct()
Log.e("first item name ",sortedNewsItems?.get(0)?.title)
recyclerView.adapter.notifyDataSetChanged()
Run Code Online (Sandbox Code Playgroud) 我浏览了arraylist docs.但是我没有在docs或google中发现任何将其称为FIFO数据结构的地方?
直到和除非,我不从列表中删除/删除元素,我将按照它们插入的相同顺序获取元素.所以不能arraylist
我是Java的新手,并尝试创建一个大小不固定的二维列表.我有一个类如下所示:
public class q1 {
List<List<Integer> > L = new ArrayList<List<Integer> >();
public void set(int m,int n){
//This is the function which would get the size of the 2d list
}
}
Run Code Online (Sandbox Code Playgroud)
我看到了答案,但它们必须是固定大小的,例如:
ArrayList<String>[][] list = new ArrayList[10][10];
Run Code Online (Sandbox Code Playgroud)
但是,我希望不同对象的列表L的大小不同.还有其他选项,比如copyOf,但上述功能是否可以通过这个数组实现?
这是我尝试过的:
HashMap<String, List<Integer>> hmap = new HashMap<String, List<Integer>>();
List<Integer> valueList = new ArrayList<Integer>();
valueList.add(9);
valueList.add(8);
valueList.add(7);
valueList.add(6);
hmap.put("A", valueList);
valueList.add(5);
valueList.add(4);
valueList.add(3);
valueList.add(2);
hmap.put("B", valueList);
valueList.add(7);
valueList.add(6);
valueList.add(5);
valueList.add(4);
hmap.put("C", valueList);
valueList.add(2);
valueList.add(3);
valueList.add(4);
valueList.add(5);
hmap.put("D", valueList);
Run Code Online (Sandbox Code Playgroud)
当我尝试hmap通过执行以下操作来检索特定键的值时:
List<Integer> dimensions = hmap.get("A")
Run Code Online (Sandbox Code Playgroud)
我期待哈希映射返回,[9,8,7,6]但它返回ArrayList中的所有内容,即[9,8,7,6,5,4,3,2,7,6,5,4,2,3,4,5].如何使数组列表仅将第一个值推送到该键中HashMap?我错过了什么?
我也试过valueList.clear()每个之后hmap.put() statement.这导致只推送最后一组值,即,[2,3,4,5]对于所有键 HashMap.
arraylist ×10
java ×8
hashmap ×2
list ×2
android ×1
arrays ×1
collections ×1
counter ×1
dictionary ×1
java-8 ×1
javascript ×1
jquery ×1
jtextarea ×1
kotlin ×1
sorting ×1