草庐IT

树和树的遍历

全部标签

java - 是否可以使用反射遍历包内的所有类?

这个问题在这里已经有了答案:Canyoufindallclassesinapackageusingreflection?(30个答案)关闭7年前。我有一个具有某些值的字符串。我想遍历调用特定方法的包中的所有类,如果该方法返回的值等于我的字符串中的值,则创建该类的对象。我想以动态方式执行此操作,因此如果我在此包中添加一个类,它将自动进入迭代。这有可能吗?如果没有,有办法做我想做的事吗?我在期待类似的东西。for(Classclazz:SomeClass.listClasses("org.package")){//codehere}

java - Tapestry 循环遍历 hashmap

我正在尝试遍历HashMap并显示一个数字复选框,其中id是HashMap的键并标记HashMap的值。任何人都知道它的Tapestry语法是怎样的?干杯季米特里斯 最佳答案 您应该能够像这样遍历键集:${mapValue}类文件:@PropertyprivateObjectcurrentKey;@PersistprivateSetselection=newHashSet();publicMapgetMyMap(){...}publicbooleangetCurrentValue(){returnthis.selection.con

java - 用ant只编译源代码树的一部分

假设我的源代码在我的src/树中(可能在我的test/树中)。假设我只想编译该树的部分。我可能想要这样做的原因是多种多样的。举个例子,我可能想要创建尽可能小的jar(不包括某些类),或者我可能想要最快的编译时间来编译我正在编译的内容。不过,我绝对想编译所有依赖项!这可以通过命令行轻松实现:javac-dbuild/-cpwhatever-sourcepathsrcsrc/path/to/MyClass.java现在,您如何使用ant来做到这一点?javacAnttaskcompileseverything:Thesourceanddestinationdirectorywillbere

java - 遍历列表,更好的方法

当我在Java中编码和发现新的做事方式时,我总是对循环遍历列表以输出数据的更好方法感到困惑。在下面的示例中,我循环遍历列表并使用计数器,因此很多次我不得不在输出中包含索引计数器。我偏爱方法1,但我发现这些方法都有些过时了。我见过很多循环遍历列表的例子,主要使用方法2。所以我的问题是什么是更好的方法,如果所有这些方法都一样,那么最标准的是什么?privateArrayListlist=newArrayList();publicTest(){list.add("One");list.add("Two");list.add("Three");list.add("Four");list.add

java - 使用包含或循环遍历列表之间有什么大的区别吗?

在性能方面,使用之间真的有很大的区别吗:ArrayList.contains(o)与foreach|iteratorLinkedList.contains(o)与foreach|iterator当然,对于foreach|iterator循环,我必须显式比较方法并相应地返回true或false。我正在比较的对象是equals()和hashcode()都被正确覆盖的对象。编辑:毕竟不需要了解containsValue,很抱歉。是的,我很愚蠢......我意识到我的问题是关于containsKey与foreach的问题是多么愚蠢,没关系,我不知道我在想什么。我基本上想知道上面的那些(编辑掉其

java - 遍历枚举值的子集

我有一个包含4个值的枚举,并且我有一个接受枚举值的方法签名。我希望能够对所有未作为参数传递给doSomething()的枚举值执行某些操作。publicvoiddoSomething(EnumThingthing){EnumThing[]thingValues=EnumThing.values();ListvaluesNotPassedAsArg=newArrayList();for(EnumThingth:thingValues){valuesNotPassedAsArg.add(th);}valuesNotPassAsArg.remove(thing);//hereIwouldlo

Java Hashmap 尾部遍历

尾遍历在JavaHashmap中是什么意思?Java反转具有多个元素的(链表)桶。进行反转是为了避免TailTraversing并向头部添加元素。我无法理解这个概念。 最佳答案 IcametothisblogsearchingforanansweraboutwhattailtraversalisandnowihadanEpiphany达南贾延,这基本上意味着尾部遍历是链表中的一个概念。我将尝试用一个例子来解释这一点。假设您要将以下元素添加到单向链表23、65、44、12、90现在好了。你已经添加了5个元素。所以一段时间后,您需要添加

java - 对角线遍历二维数组

我编写了以下代码来遍历数组的一半对角线:String[][]b=[a,b,c][d,e,f][g,h,i];publicvoidLoopDiag()for(inti=b.length-1;i>0;i--){Stringtemp="";for(intj=0,x=i;x现在它打印对角线,即当前输出:gdhaeibfc如何让它打印另一半对角线,即所需的输出:adbgechfi 最佳答案 仅为测试目的初始化数组:intdim=5;charch='A';String[][]array=newString[dim][];for(inti=0;i

java - 如何遍历所有组合,例如48选5

这个问题在这里已经有了答案:关闭11年前。PossibleDuplicate:Howtoiterativelygeneratekelementssubsetsfromasetofsizeninjava?我想构建自己的扑克手牌评估器,但在特定部分遇到了问题。如果两名玩家发两张牌,则一副牌还剩48张。在TexasHold'em中,还会再发5张可能的公共(public)牌(这称为公共(public)牌)。我想枚举/循环遍历所有48个选择5种可能的棋盘组合,并计算玩家A获胜的次数和玩家B获胜的次数以及他们平局的时间。我不确定如何系统地遍历每5张牌的组合。有人有什么想法吗?这些卡片表示为Card

java - 我如何遍历 Java 中的字符串?

publicstaticBooleancmprStr(Strings1,Strings2){//STUFF}我想遍历s1以确保s1中的每个字符都包含在s2中。 最佳答案 publicstaticBooleancmprStr(Strings1,Strings2){for(inti=s1.length()-1;i>=0;--i){if(s2.indexOf(s1.charAt(i))==-1){returnBoolean.FALSE;}}returnBoolean.TRUE;} 关于java