Wil*_*ill 98 java random arraylist
我学习Java,我有一个问题ArrayList和RandomGenerator.
我有一个名为的对象catalogue,它有一个从另一个被调用的类创建的对象数组列表item.
我需要一个方法,catalogue其中返回item列表中的一个对象的所有信息.
该item随意选择的需求.
import java.util.ArrayList;
import java.util.Random;
public class Catalogue
{
private Random randomGenerator;
private ArrayList<Item> catalogue;
public Catalogue ()
{
catalogue = new ArrayList<Item>();
}
public Item anyItem()
{
int index = randomGenerator.nextInt(catalogue.size());
return catalogue.get(index);
System.out.println("Managers choice this week" + anyItem + "our recommendation to you");
}
Run Code Online (Sandbox Code Playgroud)
当我尝试编译时,我得到一个指向System.out.println行的错误说..
'找不到符号变量anyItem'
Rob*_*ond 111
anyItem是一个方法,并且System.out.println调用在return语句之后,因此无法编译,因为它无法访问.
可能想重写它像:
import java.util.ArrayList;
import java.util.Random;
public class Catalogue
{
private Random randomGenerator;
private ArrayList<Item> catalogue;
public Catalogue()
{
catalogue = new ArrayList<Item>();
randomGenerator = new Random();
}
public Item anyItem()
{
int index = randomGenerator.nextInt(catalogue.size());
Item item = catalogue.get(index);
System.out.println("Managers choice this week" + item + "our recommendation to you");
return item;
}
}
Run Code Online (Sandbox Code Playgroud)
小智 21
public static Item getRandomChestItem(List<Item> items) {
return items.get(new Random().nextInt(items.size()));
}
Run Code Online (Sandbox Code Playgroud)
你回来后打印出来——你永远无法达到那个声明。此外,您从未将 anyItem 声明为变量。你可能想要
public Item anyItem()
{
int index = randomGenerator.nextInt(catalogue.size());
Item randomItem = catalogue.get(index);
System.out.println("Managers choice this week" + randomItem.toString() + "our recommendation to you");
return randomItem;
}
Run Code Online (Sandbox Code Playgroud)
toString 部分只是一个快捷方式——您可能想要添加一个方法“getItemDescription”,该方法为此目的返回一个有用的字符串......
在这里,使用Generics:
private <T> T getRandomItem(List<T> list)
{
Random random = new Random();
int listSize = list.size();
int randomIndex = random.nextInt(listSize);
return list.get(randomIndex);
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
215511 次 |
| 最近记录: |