我有一个以某种方式订购的.csv文件.我想用另一个字段重新排序.非常感谢您的想法.
我只需要做一次,而不是多次,所以性能不是太大的问题.
我在想什么 如果我只是创建一个对象(java)来保存每个字段,然后创建这些对象的ArrayList.然后我将在我想要的字段上订购ArrayList(我可以根据对象的一个成员订购对象的ArrayList - 对吗?),并将此重新排序的ArrayList打印到.csv文件.
如何在dotnet框架2中的ArrayList C#中结合数据?
example of data : 1, 2, 2, 3, 4, 5, 5, 6, 6
how to get 1, 2, 3, 4, 5, 6
Run Code Online (Sandbox Code Playgroud) 我如何随机化对的顺序?例如,我有3个元素存储在列表中,例如A,B,C - >,它们产生AB,AC,BC对.
如何以随机顺序显示对?例如AB,AC,BC 或 BC,AB,AC 或 AC,AB,BC
ArrayList<String> s = new ArrayList<String>();
s.add("A");
s.add("B");
s.add("C");
ListGenerator lg = new ListGenerator(s);
Run Code Online (Sandbox Code Playgroud)
其他类
public class ListGenerator {
private ArrayList<String> pairsX= new ArrayList<String>();
public ListGenerator(ArrayList<String> list) {
int size = list.size();
int count_pairs = 0;
// create a list of all possible combinations
for(int i = 0 ; i < size ; i++)
{
String s1 = ""+i;
for(int j = (i+1) ; j < size ; j++)
{
count_pairs++;
String s2 …Run Code Online (Sandbox Code Playgroud) 我决定在Java中创建一个货币转换器,并将其转换为从文本文件中提取转换值(以便于编辑,因为这些值会不断变化).我确实通过使用Scanner类并将所有值放入ArrayList来实现.
现在我想知道是否有办法在文本文件中添加注释以供用户阅读,扫描仪将忽略该注释."//"似乎不起作用.
谢谢
我试图从数组列表中删除一个项目,方法是从JList中选择它并单击"删除".
我到目前为止的代码,
buttondeleteContact.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent event) {
if (contactList.getSelectedIndex() != -1) {
people.removeElementAt(contactList.getSelectedIndex());
People.remove(contactList.getSelectedIndex());
System.out.println(People);
}
});
Run Code Online (Sandbox Code Playgroud)
我知道有些东西名字很差,但是人(小写p)是我的DefaultListModel的名字,而People(大写P)是我的ArrayList的名字.基本上,我只想从数组中删除4行的块.那么,数组中的位置,以及之后的3.
我有一个包含字符串的ArrayList,还包含其他可能包含字符串或更多ArrayLists的ArrayLists.
有没有一种简单的方法从这个多级ArrayList中提取所有字符串?
我假设一些递归是受宠的,但我无法让它工作.
假设我有一个列表A,它需要看起来与列表B完全相同.除了A之外,B所有的对象都不需要添加到A中.所有A有但不包含B的对象需要从一个.
我需要这个的原因是因为我有一个我保存到文件的播放器ArrayList.每次更新播放器的属性时,我都会通过调用一个查看播放器的ArrayList并保存它的方法将更改保存到文件中.这是有效的,因为ArrayList具有对玩家的引用.
但是,每当我在列表中搜索播放器时,我首先通过读取存储它的文件来更新列表.这将使用全新对象替换所有引用.执行此操作后,如果我对以前提取的用户进行了更改并尝试保存它.播放器的新实例将被保存,而不是我进行更改的实例.
会想出一个好的算法来使列表等于另一个解决方案吗?或者有更好的方法来更新整个列表,同时保持在那里使用的引用?
更新:更新的解决方案,在O(nlogm)时间运行.遍历目标中的每个元素,在源中搜索它.如果找到,则从源中删除.如果没有,则从目的地移除.然后将源中的剩余元素添加到目标.列表当然需要进行排序,但是我从文件中获取的列表已经被排序了,因为我按照我的添加进行排序.
import java.util.Collections;
import java.util.Comparator;
import java.util.List;
public class CopyList {
public static void copyList(List dest, List src) {
copy(dest, src);
// the remaining elements in src list will be those that were originally
// in src but not in dest and so they need to be added
dest.addAll(src);
}
public static void copyList(List dest, List src, Verify v) {
copy(dest, src);
// the remaining elements in src list will be those that were originally
// …Run Code Online (Sandbox Code Playgroud) 我在通过RMI传输的对象上遇到一个奇怪的问题.这已经破坏了我的头几天了,我想知道是否有人可以帮助解决这个问题.
我有一个Garage类(也是一个JPA实体,如果它是相关的)我推送到一个名为X over RMI的java进程(所以这个对象被序列化).Garage对象存储一个名为Car(也是JPA实体)的对象列表,这些对象也是Serializable.
Garage上的equals方法基本上是在汽车列表中调用equals(一个ArrayList)
当我在java进程中调用equals时,它不会因为某种原因在列表上调用equals,就像我期望它在列表中的所有Cars上调用equals来检查列表是否相等而不执行此操作.
奇怪的是,当单元测试时,它确实调用了Cars ArrayList的所有成员的equals.我甚至将对象序列化为单元测试的一部分,这也有效.有任何想法吗?我希望我能解决问题,随时请求任何信息澄清任何事情.
编辑:我几乎可以肯定它的ArrayList很奇怪,因为当我在我的对象中手动执行equals而不是在汽车列表中调用equals时我在汽车列表上执行了foreach循环并在每辆Car上调用equals(就像我预期的ArrayList equals无论如何,它按预期工作)
@Entity
@Table(schema="pdw", name="garage")
public class Garage
implements Comparable<Garage> ,
Serializable {
private static final long serialVersionUID = 1L;
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private String id;
private String name;
@OneToMany(cascade = CascadeType.ALL)
@JoinTable(schema="pdw")
private List<Car> cars = new ArrayList<Car>();
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name; …Run Code Online (Sandbox Code Playgroud) 我过去一直在使用矢量,我对它们非常熟悉.我听说ArrayLists更快更灵活.我是使用ArrayLists和Java Generics的新手.我目前正在使用它们如下并接收有关参数化的警告(我认为我通过声明它们来做到了这一点<String>.
ArrayList<String> arrayList = new ArrayList <String> ();
...
//then within a method
arrayList.add(file.getName()); //<-This line triggers the warning.
Run Code Online (Sandbox Code Playgroud)
我在网上发现,可以通过抑制方法中的警告来避免这种情况,如下所示.但是,这是一个解决方法,我宁愿了解arraylists如何正常工作和使用它们,而不是禁止警告错误地使用它们.
@SuppressWarnings("unchecked")
Run Code Online (Sandbox Code Playgroud)
并且,如果有关于使用ArrayLists的某种约定或标准,我也很想了解这些.
编辑: 我收到的警告如下:类型安全:方法add(Object)属于原始类型ArrayList.应该参数化对泛型类型ArrayList的引用
我有一个ArrayList包含Attributes
class Attribute{
private int id;
public string getID(){
return this.id;
}
private string value;
public string getValue(){
return this.value;
}
//... more properties here...
}
Run Code Online (Sandbox Code Playgroud)
好吧,我用数百个属性填充了ArrayList.我想找到具有已定义ID的属性.我想做这样的事情:
ArrayList<Attribute> arr = new ArrayList<Attribute>();
fillList(arr); //Method that puts a lot of these Attributes in the list
arr.find(234); //Find the attribute with the ID 234;
Run Code Online (Sandbox Code Playgroud)
循环遍历ArrayList是唯一的解决方案.