我首先使用java类获取基本对象,我还不太了解并需要一些帮助..我需要将这些值分配给arraylist但还需要允许用户根据字符串选择一个健康选项然后输出与选项相关的值.
double [] healthBenDesig = new double [5];
double [] healthBenDesig = {0.00, 311.87, 592.56, 717.30, 882.60};
Run Code Online (Sandbox Code Playgroud)
我想分配的字符串是:
none = 0.00
employeeOnly = 311.87
spouse = 592.56
children = 717.30
kids = 882.60
Run Code Online (Sandbox Code Playgroud)
最终,我希望用户输入例如"none",输出将none与arraylist [0]插槽中保存的值无关并返回该值.这可能吗?还是有一种我更容易忽视的方式?
如果有人能帮助我,我会非常感激:)谢谢
我有arrayList
ArrayList<Product> productList = new ArrayList<Product>();
productList = getProducts(); //Fetch the result from db
Run Code Online (Sandbox Code Playgroud)
该列表存储在ArrayList中.问题是,当我打印其数据时,我获得:
A, Arizona, 1980
B, Arizona, 1970
C, NewYork, 1980
D, NewYork, 1970
E, California, 1960
Run Code Online (Sandbox Code Playgroud)
我想根据区域将ArrayList转换为Map:
Map<Integer, Map<String, List<Product>>>//Integer here is year and String here is manufacturingArea
Run Code Online (Sandbox Code Playgroud)
Product bean具有以下结构:
class Product{
private String name;
private String manufacturingArea;
private int year;
/* Getters and setters*/
/* toString method */
}
Run Code Online (Sandbox Code Playgroud)
我想像这样转换成地图:
{1980= [Arizona,A], [NewYork,C]},
{1970= [NewYork,B],[NewYork,D]},
{1960= [California,E]}
Run Code Online (Sandbox Code Playgroud)
如何通过将arraylist转换为map来对数据进行分组?
我没有ArrayList太多使用,并且我认为从他们带出变量我需要一个增强的for循环.
我试图找出变量并将它们的x值与另一个x和y值比较到另一个y值,如果匹配则删除该变量.
到目前为止,我对这种方法的代码是;
public int detect(int x, int y){
int count=0;
for (EnemyShip tempEnemy:EList){
if(x==tempEnemy.x && y==tempEnemy.y){
EList.remove(tempEnemy);
count++;
}
}
return count;
}
Run Code Online (Sandbox Code Playgroud)
我知道问题在于EList.remove(tempEnemy);并知道如果它是正常的循环,如何完成此任务.
但这个增强的循环(我的讲师称之为)让我感到困惑.
所以我想我的问题是如何从Arraylist中删除与x和y匹配的变量?
所有这些类都编译得很好,但是当我尝试运行我的测试器类时,它会返回以下错误:
显示java.lang.NullPointerException:
空值
显示java.lang.NullPointerException
在Bin.add(Bin.java:23)
在BinTest.main(BinTest.java:11)
以下是课程:
public class BinItem
{
private String mySKU;
private int myQuantity;
public BinItem( String sku, int quantity )
{
mySKU = sku;
myQuantity = quantity;
}
public String getSKU()
{
return mySKU;
}
public int getQuantity()
{
return myQuantity;
}
public String toString()
{
// Write code here to return a string using
// the format: “SKU <sku>: <quantity>”. For
// example: “SKU 12345-15: 4320”.
return "SKU <" + getSKU() + ">: <" + …Run Code Online (Sandbox Code Playgroud) 如果我添加的项目多于容量中指定的项目,请告诉我HashMap中旧项目的内容是什么?例如:
HashMap<String, Bitmap> hashmap= new HashMap<String, Bitmap>(5);
Run Code Online (Sandbox Code Playgroud)
我将容量设置为5.但如果我将10个项目添加到此HashMap,前5个项目和位图将会是什么?
我在A级宣布了我的arraylist:
private ArrayList<String> user = new ArrayList<String>();
Run Code Online (Sandbox Code Playgroud)
我在同一个类(A类)中创建了我的getter方法:
public ArrayList<String> getUser()
{
return user;
}
Run Code Online (Sandbox Code Playgroud)
然后在我的第二堂课(B班),我能够做到以下几点:
A UD = new A();
UD.getUser().clear();
UD.getErrmsg().clear();
Run Code Online (Sandbox Code Playgroud)
如何防止我的第二堂课在第一堂课(A班)中清除arraylist?
第一个问题在这里修复,但它带来了另一个,我更喜欢创建一个新线程.
我有一个CustomList<T extends A>将与使用Class A1和Class A2,既舒展Class A.
我有一个Class B包含CustomLists:
public Class B
{
CustomList<A1> listA1 = new CustomList<A1>();
public CustomList<A1> getListA1(){ return listA1;}
}
Run Code Online (Sandbox Code Playgroud)
每当我尝试做的时候
for(A1 obj : myBClass.getListA1())
{
/*Do something*/
}
Run Code Online (Sandbox Code Playgroud)
我得到了Type mismatch : cannot convert from element type A to A1.,因为getListA1()返回一个,我没有得到它CustomList<A1>.我想这可能是因为CustomList<T extends A>.
我想创建一个链式哈希表.它需要是一个链表的列表,这些结构说我应该这样做:
ArrayList<LinkedList<String>> hashTable
Run Code Online (Sandbox Code Playgroud)
初始化表我使用此代码:
public static ArrayList<LinkedList<String>> createNewTable (){
double tableSize = Math.pow(baseTableSize, initialTableExponent);
for (int i = 0; i < tableSize; i++){
LinkedList<String> row = new LinkedList<String>();
hashTable.add(row);
}
return hashTable;
}
Run Code Online (Sandbox Code Playgroud)
但是,当我在"主"中运行它时,我得到了这个例外:
线程"main"java.lang.NullPointerException中的异常
问题是什么?有没有更好的方法呢?
谢谢!
在Integer Wrapper类中,只要我们比较这样
Integer a=546;
Integer b=546;
System.out.println(a==b);
Run Code Online (Sandbox Code Playgroud)
它返回false,但是当有集合时为什么
ArrayList<Integer> a=new ArrayList<Integer>();
a.add(5);
a.add(546);
Integer g=546;
a.remove(g);
Run Code Online (Sandbox Code Playgroud)
它将它从ArrayList中删除??
我开发了一个Asp.Net MVC Web应用程序并将其部署在IIS 8 Server上,在我的应用程序中,我使用一个列表来存储在线用户并使用以下代码在页面中显示它们
if (HttpRuntime.Cache["LoggedInUsers"] != null)
{
List<string> loggedInUsers = (List<string>)HttpRuntime.Cache["LoggedInUsers"];
if (loggedInUsers.Contains(model.UserName))
{
}
else
{
loggedInUsers.Add(model.UserName);
HttpRuntime.Cache["LoggedInUsers"] = loggedInUsers;
}
}
Run Code Online (Sandbox Code Playgroud)
出于某种原因,列表每晚都会被清除,当我查找活跃用户时,我看到它是空的.
是否必须在IIS 8上处理,或者有更好的方法来实现使用数据库表的在线用户可能是..