谁能仔细帮我解释下这个代码

谁能仔细帮我解释下这个代码,第1张

/

 1将数组转化为list

 2调用jdk自带的方法求交集,并集等。

/

public class test {

    public static void main(String[] args) {

        String[] a={"abc", "efg", "hi", "111"};

        String[] b={"222", "123", "111", "hi"};

        //注意:ArraysasList(a)的返回类型并非是List而是‘Arrays$ArrayList’,这是个内部类,

        //它和ArrayList一样,继承AbstractList。但是该类没有重写相关的添加方法和删除方法。

        // 所以不转型直接调用 add(),remove()等方法的时候会抛异常

        List<String> list1 = new ArrayList(ArraysasList(a));

        List<String> list2 = new ArrayList(ArraysasList(b));

        //并集:将list2中的元素全部加入到list1中。

        //list1addAll(list2);

        //交集:获取存在于list1中并且存在于list2中的元素

        list1retainAll(list2);

        //差集:删除掉list1中所有的list2中的元素

        //list1removeAll(list2);

        //无重复并集

        //list2removeAll(list1);

        //list1addAll(list2);

                //这是迭代器循环输出,不会你就用for循环吧。

        Iterator<String> it=list1iterator();

        while (ithasNext()) {

            Systemoutprintln(itnext());

        }

    }

   }

这个是最简单的。看着方法自己翻译。

import javautilHashMap;

import javautilIterator;

import javautilMap;

import javautilSet;

import javautilMapEntry;

public class TestMap {

public static void main(String[] args) {

Map<String, String> teach = new HashMap<String, String>();

teachput("Tom", "CoreJava");

teachput("John", "Oracle");

teachput("Susan", "Oracle");

teachput("Jerry", "JDBC");

teachput("Jim", "Unix");

//增加一位新老师Allen 教JDBC

teachput("Allen", "JDBC");

//Susan 改为教CoreJava

teachput("Susan","CoreJava");

//遍历Map,输出所有的老师及老师教授的课程

Set<Entry<String, String>> set = teachentrySet();

Iterator<Entry<String, String>> it = setiterator();

while(ithasNext()){

Entry<String, String> e = itnext();

Systemoutprintln(egetKey()+"\t"+egetValue());

}

//从map中得到Jim教授的课程并打印到控制台

String course = teachget("Jim");

Systemoutprintln("Jim老师教的课程是"+course);

}

}

show(a,b):是将a,b这两个变量作为参数传入show这个函数,并且调用show那个x,y不过是形式参数不具有实际意义,你写什么字目都行,它们只是一个符号而已。 返回一个值就好像是做完一道数学题得出一个结果,这个结果就是返回值,只不过在这里是经过函数的一系列运算最终得出的结果,这返回值可能被输出,也可能被用作其它函数的实际参数。

在编译时怎么会出现“使用了未经检查或不安全的 *** 作”的提示

这是"泛型"的问题。不过不影响程序的编译和执行。等你学过了泛型的时候就明白了。比如说在你的程序中改个地方,把Vector v=new Vector(); 改成如下形式: Vector<Object> v = new Vector<Object>(); 这就是泛型。其中<>括号内的Object是你要在容器中添加的对象类型,前后的<>里的类型要一致。等你学到泛型就明白了,我就说这么多。下面的这个程序就不会出现这种情况了:

import javautil;

public class TestVector

{

public static void main(String args[])

{

Vector<Object> v = new Vector<Object>();

vaddElement("one");

vaddElement("two");

vaddElement("three");

vinsertElementAt("oop",0);

vsetElementAt("four",3);

Iterator it=viterator();

for(;ithasNext();)

Systemoutprintln(itnext());

}

}

你迭代器要是用泛型。

Iterator<Integer> it=map1keySet()iterator();

还有就是在使用迭代器的时候,你判断一次,游标走了2次,使用了2次next();

while(ithasNext()){

int key=itnext();

if(key==1)

//后边自己写了

}

isEmpty()这个方法有点问题 你可以换种写法

改成 (lsize()==0)m=false:m=true; 这样就可以了

我这个里面没有参数的

以上就是关于这题java题 怎么实现的 不懂谁能教教我!。。。要简单点的写法初学者,(懂了后再加50金币感谢)全部的内容,包括:这题java题 怎么实现的 不懂谁能教教我!。。。要简单点的写法初学者,(懂了后再加50金币感谢)、java测试 急急急!!!、谁能仔细帮我解释下这个代码等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/langs/8809793.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-21
下一篇2023-04-21

发表评论

登录后才能评论

评论列表(0条)

    保存