list的初始化,add指定位置,remove指定位置。

int 转Integer:

一:自动装箱

   int i = 10;
   Integer integer = i; 

二:

   int i = 10;
   Integer integer = Integer.valueOf(i);

三:

   int i = 10;
   String s = Integer.toString(i);或者String.valueOf(i)
   Integer integer = Integer.parseInt(s);

四:

int i = 10;
List<Integer> list = new ArrayList<>();
list.add(i);//自动装箱,将 int 类型的 i 转换为 Integer 类型并添加到 List 中

List初始化:

使用Arrays.asList转化的List是固定大小的list,没法add或者remove但是可以set

        Integer[] Array = new Integer[]{1, 2, 3, 4, 5, 6};
        
        List<Integer> integerList = Arrays.asList(intArray);

创建的list没法add或remove

可以用Stream转化一个int数组到list:

   int[] intArray = {1, 2, 3, 4, 5, 6};

                      // 使用 Java 8 Stream API 转换为 Integer 数组,再转换为 ArrayList
    List<Integer> integerList = Arrays.stream(intArray)
                                      .boxed()//装箱
                                      .collect(Collectors.toList());
    这个integerList能正常add。

也可以直接将Integer数组转为List赋值给新创建的list:

list里只能添加Integer包装类型,而不能是int基本数据类型。然后我们初始化一个list可以将数组转为List,比如:

ArrayList<Integer> arr = new ArrayList<>(Arrays.asList(new Integer[]{1, 2, 3, 4, 5, 6}));


Integer[]res=new Integer[]{1,3,4,5,6};
ArrayList<Integer> arr1 = new ArrayList<>(Arrays.asList(res));

// 创建一个 Integer 类型的数组,并初始化
Integer[] array = new Integer[]{1, 2, 3, 4, 5, 6};

// 将 Integer 数组转换为 ArrayList<Integer>
ArrayList<Integer> arr = new ArrayList<>(Arrays.asList(array));

// 或者,你也可以直接在 ArrayList 的构造函数中使用 Arrays.asList
ArrayList<Integer> arr1 = new ArrayList<>(Arrays.asList(new Integer[]{1, 3, 4, 6, 7}));

List.add(i,x):无返回值

把元素x,放到索引i的元素前,使x的索引成为i,原先i位置的元素移动到x后。

List.remove(i):返回移除的元素

移除索引为i的元素,后面的元素自动向前补位。

List.remove(x):返回bool

移除指定元素,比如[Apple, Banana, Cherry, Date]

list.remove("Banana"),然后得到 [Apple, Cherry, Date]

这个list.remove("Banana")会返回一个布尔类型参数,当然不接收也可以。但我们也可以用这个布尔参数判断是否删掉元素。比如:

 boolean isRemoved = myList.remove("Banana");
   if (isRemoved) {
       System.out.println("Banana was successfully removed.");
   } else {
       System.out.println("Banana was not found in the list.");
   }

List.set(i,x):返回的是被替换掉的元素

将索引为i的元素替换为x。

质数

public static boolean isPrime(int n){
if(n<=1) return false;
if(n==2) return true;
for(int i=2;i<Math.sqrt(n);i++){
    if(n%i==0) return false;
}
return true;
}

如何把list中遇到俩个偶数就合为一个偶数,合并完的偶数也要跟相邻元素合并,并且新的偶数还在那两个元素的位置?

Integer[]res=new Integer[]{1,3,4,6,7};
    ArrayList<Integer> arr1 = new ArrayList<Integer>(Arrays.asList(res));

    int num=arr1.size();
   for(int i=0;i<arr1.size();){
       if(arr1.get(i)%2==0&&arr1.get(i+1)%2==0){
         // arr1.set(i,arr1.get(i)+arr1.get(i+1));
           arr1.add(i,arr1.get(i)+arr1.get(i+1));
          arr1.remove(i+1);
          arr1.remove(i+1);
       }
       else i++;
   }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值