我有基于ArrayList的JComboBox:
private ArrayList<String> klienci = new ArrayList<String>();
private JComboBox klienciLista;
Run Code Online (Sandbox Code Playgroud)
我在构造函数中添加它:
klienciLista = new JComboBox(klienci.toArray());
klienciLista.setPrototypeDisplayValue("#############################");
panel.add(klienciLista); //JPanel panel
Run Code Online (Sandbox Code Playgroud)
在开始时列表为空.客户端通过线程中的套接字新的ArrayList获取:
public void run() {
try {
host = InetAddress.getLocalHost().getHostName();
socket = new Socket(host, SERVER_PORT);
input = new ObjectInputStream(socket.getInputStream());
output = new ObjectOutputStream(socket.getOutputStream());
output.writeObject(nazwa);
} catch (IOException e) {
System.out.println(e);
JOptionPane.showMessageDialog(null,
"Polaczenie sieciowe dla klienta nie moze byc utworzone");
setVisible(false);
dispose(); // zwolnienie zasobów graficznych
// okno graficzne nie zostanie utworzone
return;
}
try {
while (true) {
container = new …Run Code Online (Sandbox Code Playgroud) 我是android的新手.我有一个使用SQLite DB的应用程序.我需要将值从数据库推送到类型为object的arraylist.我使用的代码在这里给出.
private ArrayList<objectname> objectList = new ArrayList<objectname>();
//function used to get values from database
public ArrayList<objectname> getResults() {
MyDb db = new MyDb(this); //my database helper file
db.open();
Cursor c = db.getAllValues(); //function to retrieve all values from a table- written in MyDb.java file
if (c.moveToFirst())
{
do {
String date = c.getString(c.getColumnIndex("date"));
try
{
ob = new objectname();
ob.setDate(c.getString(c.getColumnIndex("date")));// setDate function is written in Class file
objectList.add(ob);
}
catch (Exception e) {
Log.e(MY_DEBUG_TAG, "Error " + e.toString());
} …Run Code Online (Sandbox Code Playgroud) 在某处我看到java.util.List如下定义.
List<String> myList = new ArrayList<String>(0);
任何人都可以解释括号中的整数以及如何使用它吗?谢谢.
这是我的ArrayList的内容 contain
HPDH-1,001, Check-out date: 7/7/7
JTI-1,001, Check-out date: 7/7/7
Run Code Online (Sandbox Code Playgroud)
我的代码:
for (int i = 0; i < contain.size(); i++) {
if (contain.get(i).contains(code)) {
System.out.println(contain.get(i));
}
}
Run Code Online (Sandbox Code Playgroud)
事情是我的变量代码是字符串"JTI-1"为什么不给它JTI-1输出?我试图让它显示变量代码的值.我想删除contains.get(i),如果它只是给我输入的那个.
大家.
我刚刚进入Java,我正在尝试编写一个简单的游戏,敌人在网格上追逐玩家.我在寻路上使用维基百科页面中的简单算法进行寻路.这涉及创建两个列表,每个列表项包含3个整数.这是我正在尝试构建和显示这样一个列表的测试代码.
当我运行以下代码时,它会为ArrayList中的每个数组打印出相同的数字.为什么这样做?
public class ListTest {
public static void main(String[] args) {
ArrayList<Integer[]> list = new ArrayList<Integer[]>();
Integer[] point = new Integer[3];
for (int i = 0; i < 10; i++) {
for (int j = 0; j < 3; j++) {
point[j] = (int)(Math.random() * 10);
}
//Doesn't this line add filled Integer[] point to the
//end of ArrayList list?
list.add(point);
//Added this line to confirm that Integer[] point is actually
//being filled with 3 random ints.
System.out.println(point[0] …Run Code Online (Sandbox Code Playgroud) 我需要知道如何替换一个对象ArrayList<Animal>.
我有一个名为的数组列表ArrayList<Animal>.此列表仅列出了初始的5只动物.
Animal animal = new Animal();
animal.setName("Lion");
animal.setId(1);
ArrayList<Animal> a = new ArrayList<Animal>();
a.put(animal); // likewise i will be adding 5-6 animals here.
Run Code Online (Sandbox Code Playgroud)
稍后,我将从此数组列表中获取一个对象并进行修改.
Animal modifiedAnimal = new Animal();
animal.setName("Brown Lion");
animal.setId(1);
Run Code Online (Sandbox Code Playgroud)
现在我需要将此Animal对象添加到ArrayList<Animal> a 数组列表中.我需要它来替换Animal我们命名的前一个对象Lion.我怎样才能做到这一点 ?
注意:我不知道添加此对象的索引.
将项添加到ArrayList时,如果ArrayList未初始化为字段,则会收到NullPointerException.有谁能解释为什么?
我将ArrayList初始化为字段时工作:
public class GroceryBill {
private String clerkName;
private ArrayList<Item> itemsInGroceryList = new ArrayList<Item>();
private double total;
//Constructs a grocery bill object for the given clerk
public GroceryBill(Employee Clerk) {
this.clerkName = Clerk.getEmployeeName();
this.total = 0.0;
}
public void add(Item i) {
itemsInGroceryList.add(i);
}
}
Run Code Online (Sandbox Code Playgroud)
当我将ArrayList声明为字段然后在类构造函数中初始化它时,不工作:
public class GroceryBill {
private String clerkName;
private ArrayList<Item> itemsInGroceryList;
private double total;
//Constructs a grocery bill object for the given clerk
public GroceryBill(Employee Clerk) {
this.clerkName = Clerk.getEmployeeName();
this.total = 0.0;
ArrayList<Item> …Run Code Online (Sandbox Code Playgroud) 我有一个对象类型列表.在那里我有一个String属性idNum.现在我想通过传递idNum来获取列表中对象的索引.
List<Object1> objList=new ArrayList<Object1>();
Run Code Online (Sandbox Code Playgroud)
我不知道该怎么做 objList.indexOf(// Don't know how to give here);
是否可以在不重复列表的情况下执行此操作.我只想使用indexOf()方法.
我知道这LinkedList是作为双链表实现的。在add和remove上,其性能优于Arraylist,但在get和set方法上却较差。
这是否意味着我应该选择LinkedList在Arraylist插入?
我写了一个小测试,发现ArrayList插入速度更快。那如何链表比ArrayList?
请参考下面的示例。
import java.util.Date;
import java.util.LinkedList;
import java.util.List;
public class TestLinkedList {
public static void main(String[] args) {
long lStartTime = new Date().getTime();
System.out.println("lStartTime:: " + lStartTime);
List<Integer> integerList = new LinkedList<Integer>();
for (int i = 0; i < 10000000; i++) {
integerList.add(i);
}
long lEndTime = new Date().getTime();
System.out.println("lEndTime:: " + lEndTime);
long difference = lEndTime - lStartTime;
System.out.println("Elapsed milliseconds: " + difference);
}
}
Run Code Online (Sandbox Code Playgroud) 我想分割下面的字符串并将其存储到HashMap中.
String responseString = "name~peter-add~mumbai-md~v-refNo~";
Run Code Online (Sandbox Code Playgroud)
首先,我使用分隔符连字符( - )拆分字符串并将其存储到ArrayList中,如下所示:
public static List<String> getTokenizeString(String delimitedString, char separator) {
final Splitter splitter = Splitter.on(separator).trimResults();
final Iterable<String> tokens = splitter.split(delimitedString);
final List<String> tokenList = new ArrayList<String>();
for(String token: tokens){
tokenList.add(token);
}
return tokenList;
}
List<String> list = MyClass.getTokenizeString(responseString, "-");
Run Code Online (Sandbox Code Playgroud)
然后使用下面的代码将其转换为使用流的HashMap.
HashMap<String, String> = list.stream()
.collect(Collectors.toMap(k ->k.split("~")[0], v -> v.split("~")[1]));
Run Code Online (Sandbox Code Playgroud)
流收集器不起作用,因为没有refNo的值.
如果我在ArrayList中有偶数个元素,它可以正常工作.
有办法处理这个吗?还建议我如何使用流来执行这两个任务(我不想使用getTokenizeString()方法)使用流java 8.
arraylist ×10
java ×9
android ×1
collections ×1
field ×1
for-loop ×1
generics ×1
hashmap ×1
integer ×1
java-8 ×1
java-stream ×1
jcombobox ×1
linked-list ×1
list ×1
parentheses ×1
sqlite ×1
swing ×1