Java 下面代码中的列表迭代列表——哪种方法更好?
我正在迭代一个列表列表。在我的代码Java 下面代码中的列表迭代列表——哪种方法更好?,java,collections,arraylist,Java,Collections,Arraylist,我正在迭代一个列表列表。在我的代码listofuserdetailsperAccount是List。我正在考虑下面的两种方法,请让我知道哪种方法是正确的,更有效的,并且应该在java编码中遵循 方式1----- for(int i=0;i方式1比方式2更好。在方式2List List=new ArrayList();中,它将创建一个没有任何用途的额外ArrayList对象,这将导致内存消耗一段时间 此外,还建议使用特定于类型的列表,这样您就不会在运行时强制转换,这将是类型安全的 for(List
listofuserdetailsperAccount
是List
。我正在考虑下面的两种方法,请让我知道哪种方法是正确的,更有效的,并且应该在java编码中遵循
方式1-----
for(int i=0;i方式1比方式2更好。在方式2List List=new ArrayList();
中,它将创建一个没有任何用途的额外ArrayList
对象,这将导致内存消耗一段时间
此外,还建议使用特定于类型的列表
,这样您就不会在运行时强制转换,这将是类型安全的
for(List<E> list : listOfUserDetailsPerAccount){
...
}
for(列表:listOfUserDetailsPerAccount){
...
}
在Java 5和更高版本中,请分别使用。方式1比方式2更好。在方式2
列表=新建ArrayList();中,它将创建一个没有任何用途的额外ArrayList
对象,这将导致内存消耗一段时间
此外,还建议使用特定于类型的列表
,这样您就不会在运行时强制转换,这将是类型安全的
for(List<E> list : listOfUserDetailsPerAccount){
...
}
for(列表:listOfUserDetailsPerAccount){
...
}
在Java 5和更高版本中,请分别使用。方式1比方式2更好。在方式2列表=新建ArrayList();中,它将创建一个没有任何用途的额外
ArrayList
对象,这将导致内存消耗一段时间
此外,还建议使用特定于类型的列表
,这样您就不会在运行时强制转换,这将是类型安全的
for(List<E> list : listOfUserDetailsPerAccount){
...
}
for(列表:listOfUserDetailsPerAccount){
...
}
在Java 5和更高版本中,请分别使用。方式1比方式2更好。在方式2列表=新建ArrayList();中,它将创建一个没有任何用途的额外
ArrayList
对象,这将导致内存消耗一段时间
此外,还建议使用特定于类型的列表
,这样您就不会在运行时强制转换,这将是类型安全的
for(List<E> list : listOfUserDetailsPerAccount){
...
}
for(列表:listOfUserDetailsPerAccount){
...
}
在Java 5及以上版本中,每个循环都使用。我将使用每个循环
for( List userDetailsPerAccount : listOfUserDetailsPerAccount ) {
//anything you want to do with userDetailsPerAccount
}
每个循环我都会使用
for( List userDetailsPerAccount : listOfUserDetailsPerAccount ) {
//anything you want to do with userDetailsPerAccount
}
每个循环我都会使用
for( List userDetailsPerAccount : listOfUserDetailsPerAccount ) {
//anything you want to do with userDetailsPerAccount
}
每个循环我都会使用
for( List userDetailsPerAccount : listOfUserDetailsPerAccount ) {
//anything you want to do with userDetailsPerAccount
}
这两种解决方案都存在一些问题
List-listofuserdetailsperAccount对象没有正确键入,因为内部的List
是一个需要避免的对象。假设您的内部列表包含UserDetail
对象,则列表的类型应为List
列表
,它是
你评论(整理): 因此,在初始化时,我现在正在做类似的事情,您能告诉我这是否正确吗:
List<List<String>> listofAccountdetailsLoggedinUser = null;
listofAccountdetailsLoggedinUser = new ArrayList<List<String>>();
null
。这不会造成任何影响,因为它不会构造不必要的对象,但没有理由-您可以在一行中声明并初始化变量,就像您在第二个示例中所做的那样
,如下所示:
List<List<String>> listofAccountdetailsLoggedinUser = new ArrayList<>();
List-listofacountdetailslogedinuser=new-ArrayList();
这两种解决方案都存在一些问题
List-listofureDetailsPeraccount
对象没有正确键入,因为内部的List
是一个需要避免的对象。假设您的内部列表包含UserDetail
对象,则列表的类型应为list
列表
,它是
你评论(整理): 因此,在初始化时,我现在正在做类似的事情,您能告诉我这是否正确吗:
List<List<String>> listofAccountdetailsLoggedinUser = null;
listofAccountdetailsLoggedinUser = new ArrayList<List<String>>();
null
。它不会伤害任何东西,因为它不会构造不必要的对象,但是没有理由-您可以在一行中声明和初始化变量,就像您在第二个示例中所做的那样
,如下所示:
List<List<String>> listofAccountdetailsLoggedinUser = new ArrayList<>();
List-listofacountdetailslogedinuser=new-ArrayList();
这两种解决方案都存在一些问题
List-listofureDetailsPeraccount
对象没有正确键入,因为内部的List
是一个需要避免的对象。假设您的内部列表包含UserDetail
对象,则列表的类型应为list
列表
,它是
你评论(整理): 因此,在初始化时,我现在正在做类似的事情,您能告诉我这是否正确吗:
List<List<String>> listofAccountdetailsLoggedinUser = null;
listofAccountdetailsLoggedinUser = new ArrayList<List<String>>();
null
。它不会伤害任何东西,因为它不会构造不必要的对象,但是没有理由-您可以在一行中声明和初始化变量,就像您在第二个示例中所做的那样
,如下所示:
List<List<String>> listofAccountdetailsLoggedinUser = new ArrayList<>();
<代码