程序设计题 50

使用ArrayList编写名为ALDemo.java的程序,实现如下操作:1.将数组int[]a={1,2,3,4,5,6,7,8,9,10}转换为ArrayList集合... 使用ArrayList编写名为ALDemo.java的程序,实现如下操作:
1. 将数组int[] a = {1,2,3,4,5,6,7,8,9,10}转换为ArrayList集合al;
2. 使用for循环删除所有值为3的倍数的元素,同时将所有值为奇数的元素的值放大10倍;
3. 使用迭代器输出集合中的所有元素。
展开
 我来答
ijava学习网
2018-07-02 · 国内最优秀java资源共享平台
ijava学习网
国内最优秀的java免费资源共享及学习平台,专注从实战中学习与成长。主要包括教程、经验分享、知识、资讯、工具、手册、视频及各种资源下载。
向TA提问
展开全部
/*
* 使用ArrayList编写名为ALDemo.java的程序,实现如下操作:
1. 将数组int[] a = {1,2,3,4,5,6,7,8,9,10}转换为ArrayList集合al;
2. 使用for循环删除所有值为3的倍数的元素,同时将所有值为奇数的元素的值放大10倍;
3. 使用迭代器输出集合中的所有元素。
*/
public static void main(String[] args) {
int[] a = {1,2,3,4,5,6,7,8,9,10};
ArrayList<Integer> al = new ArrayList<Integer>();
//1. 将数组int[] a = {1,2,3,4,5,6,7,8,9,10}转换为ArrayList集合al;
for (int i = 0; i < a.length; i++) {

al.add(a[i]);

}
System.out.println("1:"+al);

//2. 使用for循环删除所有值为3的倍数的元素,同时将所有值为奇数的元素的值放大10倍;
for (int i = 0; i < al.size(); i++) {
if(al.get(i)%3==0){
int al2=al.get(i);
al.remove(i);
al.add(i, al2*10);
}
}
System.out.println("2:"+al);
//3. 使用迭代器输出集合中的所有元素。
Iterator<Integer> it = al.iterator();
System.out.println("使用迭代器输出集合中的所有元素");
while(it.hasNext()){
//next()返回的数据是Object型,需要强制转化
Integer info = (Integer)it.next();
System.out.println(info);
}
}
粉红顽皮蛇tz
2018-07-02 · TA获得超过467个赞
知道小有建树答主
回答量:419
采纳率:85%
帮助的人:153万
展开全部
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;


public class ALDemo {
public static void main(String[] args) {
int[] a = {1,2,3,4,5,6,7,8,9,10};//如果数组是integer的话 就有别的方法转换
//List<Integer> list = Arrays.asList(a); 编译通不过
//基本数据类型无法泛型化 所以可以编译通过的 语句中 泛型是一个int数组
//List<int[]> list = Arrays.asList(a);//编译通过
//数组转list begin
List<Integer> al = new ArrayList<Integer>();
for(int i = 0 ; i < a.length ; i++){
al.add(a[i]);
}
System.out.println("修改前list:"+al);
//数组转list end
//使用for循环删除所有值为3的倍数的元素,同时将所有值为奇数的元素的值放大10倍;
boolean flag = false;//list.remove方法删除元素后下标会发生变化所以加一个标识符
for(int i = 0 ; i < al.size() ; i++){
if(flag){//判断如果上一个元素是删除过的 这里对i进行减1
i = i-1;
flag = false;
}
if(al.get(i)%3 == 0){//取余数 如果是0的话
al.remove(i);
flag = true;
}else{//如果不是3的倍数
if(al.get(i)%2 != 0){//不等于0就是奇数
al.set(i, al.get(i) * 10);
}
}
}
System.out.println("修改后list:"+al);

Iterator<Integer> it = al.iterator();
System.out.println("使用迭代器输出集合中的所有元素");
while(it.hasNext()){
Integer info = (Integer)it.next();
System.out.println(info);
}
}

}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式