栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

数据结构训练任务

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

数据结构训练任务

题目如下:

1、 定义一个方法 listTest(ArrayList list, String name),要求返回
name 在 list 里面第一次出现的索引,如果 name 没出现过返回-1。
2、已知数组存放一批 QQ 号码,长度 5-11 位,
String[] strs = {"10001","10086","12347806666","45612378901","10001","12347806666"}。
将该数组里面的所有 qq 号都存放在 linkedList 中,将 list 中重复元素删
除,将 list 中所有元素分别用迭代器和增强 for 循环打印出来。

这俩题都不是很难,所以直接上源码(注释很详细)

第一题!:

import java.util.ArrayList;
import java.util.Scanner;
//1、 定义一个方法 listTest(ArrayList list, String name),要求返回
//name 在 list 里面第一次出现的索引,如果 name 没出现过返回-1。
public class Demo {
    public static void main(String[] args) {
        ArrayList name = new ArrayList<>();
        name.add("白日梦想家");      //往name数组中先添加元素
        name.add("午夜实干家");
        name.add("哈哈哈");
        m: while (true) {
            System.out.println("----欢迎使用name查找系统----");
            Scanner str = new Scanner(System.in);
            System.out.println("1-查找,2-退出");
            int o=-1;
            try {o = str.nextInt();} //因为用户输入时可能输的不是数字,所以try一下
            catch (Exception e){
                System.out.println("请输入合法的数字!");
            }
            if (o == 1) {
                System.out.println("请输入您要找的name:");
                Scanner n = new Scanner(System.in);
                String text = n.nextLine();
                int i = name.indexOf(text);  //返回索引给i
                if (i == -1) {
                    System.out.println("您要找的name不存在!请重新输入");
                } else {
                    System.out.println("您要找的name的索引为:" + i);
                }
            }else if(o==2){
                System.out.println("感谢您的使用!欢迎下次再来!");
                break m;
            }
            else{
                System.out.println("输入有误请重新输入!");
            }
        }
    }
}

第二题:

import java.util.Iterator;
import java.util.linkedList;
//2、已知数组存放一批 QQ 号码,长度 5-11 位,
//String[] strs = {"10001","10086","12347806666","45612378901","10001","12347806666"}。
//将该数组里面的所有 qq 号都存放在 linkedList 中,将 list 中重复元素删
//除,将 list 中所有元素分别用迭代器和增强 for 循环打印出来。
public class Demo2 {
    public static void main(String[] args) {
        String [] strs = {"10001","10086","12347806666","45612378901","10001","12347806666"};
        linkedList list = all(strs);
        System.out.println("----增强for:----");
        for (String i:list) {
            System.out.println(i);
        }
        System.out.println("----迭代器:----");
        Iterator iter = list.iterator(); //申请迭代器
        while (iter.hasNext()){       //如果hasNext返回true则证明有下一个元素
            String s = iter.next();   //下一个元素给对象s
            System.out.println(s);    //输出下一个元素
        }
    }
    public static linkedList all(String[] strings){  //筛选最终要遍历出去的字符串
        linkedList list = new linkedList();
        for(int i = 0;i 

看完若还有疑问,欢迎私信我!我都会一一解答~

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/269966.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号