大家好。感谢对我的障碍的主要帮助。这次我的问题是,我如何对代码中提供的数组列表进行排序基本上不知道我需要在下面提供的代码中添加什么,只是为了简单五分我得到了 3 个数组列表,我想将它们合并为一个数组列表,所以他们可以在猜测和尝试中排序(如果两个玩家有相同的猜测,那么时间应该确定)。很难解释它,但我尽力了......最好的办法是运行它然后你会弄清楚问题是什么?
这是代码:
import java.util.*;
import java.util.Scanner.*;
import java.util.ArrayList.*;
public class Main {
public static String ToString(int a, double b, String c)
{
String aS = Integer.toString(a);
String bS = Double.toString(b);
String scoreList = (aS + "\t\t" + bS + "\t\t" + c);
return scoreList;
}
private static void start() {
int tries = 0 ;
int guess = -1;
String name ;
String quit = "quit";
String y = "yes";
String n = "no";
String currentGuess;
String another …Run Code Online (Sandbox Code Playgroud) 我目前正在开发一款太空入侵者风格的游戏,但我遇到了多个子弹实例的问题。目前我只能开火。我一直试图让它与数组列表一起工作,但我似乎无法让它工作。最接近我让它工作的是,它发射了多颗子弹,但它们都从相同的位置产生,因为子弹没有产生与船舶位置相关。当我在物体超出边界后移除物体时,游戏也会崩溃。谁能帮我看看我哪里出错了。这是我到目前为止的一些代码,注释掉的部分是我尝试让数组列表工作
import java.util.ArrayList;
import org.newdawn.slick.Input;
import org.newdawn.slick.Graphics;
import org.newdawn.slick.GameContainer;
public class Player extends Entity
{
private int speed = 5;
private ArrayList<Bullet> bulletList;
private boolean firing;
private Bullet bullet;
public Player()
{
bullet = new Bullet();
//bulletList = new ArrayList<Bullet>();
this.setImage("ship");
this.setPosition(350,450);
this.setDimenseions(100, 100);
this.createRectangle();
}
@Override
public void entityLogic(GameContainer gc, int deltaTime)
{
Input input = gc.getInput();
if(input.isKeyDown(Input.KEY_A))
{
this.x -= speed;
}
if(input.isKeyDown(Input.KEY_D))
{
this.x += speed;
}
if(input.isKeyDown(Input.KEY_W))
{
this.y -= speed;
}
if(input.isKeyDown(Input.KEY_S))
{
this.y += …Run Code Online (Sandbox Code Playgroud) 假设我有一个对象列表,可称其为具有数量和价格作为字段的对象Order。
例如如下:
对象Order(字段quantity和price)列表包含以下值:
Quantity Price
5 200
6 100
3 200
1 300
Run Code Online (Sandbox Code Playgroud)
现在,我想使用Java-8来获取以以下方式过滤的列表:
Quantity Price
8 200
6 100
1 300
Run Code Online (Sandbox Code Playgroud)
价格是要过滤的唯一值,并对价格具有的任何数量进行求和,我想以此为基础形成一个新列表。
请建议我如何使用Java 8 Lambda表达式来完成此操作,谢谢。
我的列表里面有Object [],我想访问其中一个Objects []的值。这是我的代码的样子:
private List<Object> trackList;
trackList = new ArrayList<>();
Integer random = (int)(Math.random() * ((100 - 0) + 1)) + 0;
Integer random2 = (int)(Math.random() * ((100 - 0) + 1)) + 0;
Object[] currTrack = new Object[]{random1, random2};
trackList.add(currTrack);
Integer value1 = trackList.get(0)[1];
Run Code Online (Sandbox Code Playgroud)
获取:“期望的数组类型;找到:'java.lang.object'
我想我缺少一些非常简单的东西。谢谢您的帮助。
我想要做的是,将索引存储在当前元素重复的数组列表中,我已经完成了,现在我想检查一下。
HashMap<Integer,ArrayList<Integer>> hmap = new HashMap<>();
for(int i=0;i<arr.length;i++)
{
if(!hmap.containsKey(arr[i]))
{
ArrayList<Integer> a1 = new ArrayList<>();
hmap.put(arr[i],a1);
}
else
hmap.get(arr[i]).add(i);
}
for(Map.Entry m:hmap.entrySet())
{
ArrayList<Integer> alist = {Here it is showing erorr.}m.getValue();
System.out.println(m.getKey()+" ");
for(int i=0;i<alist.size();i++)
System.out.print(alist.get(i)+" ");
}
Run Code Online (Sandbox Code Playgroud) 我的主要问题是返回的contains()方法ArrayList始终为false,但我不确定为什么。
我创建了一个,ArrayList<Position>名为allValidPositions,其中包含我的自定义类的许多实例Position。
当我尝试在中找到特定Position元素时ArrayList,它总是返回false。
// The parameters represent X and Y coordinates
Position positionToCheck = new Position(0, 0);
if (allValidPositions.contains(positionToCheck) {
System.out.println("Found");
} else {
System.out.println("Not found");
}
Run Code Online (Sandbox Code Playgroud)
Not found尽管我知道有一个Position应该是同一对象(对象中的字段和值相同),但它始终会打印。
当我进行了大量搜索,但没有获得将数组合并到一个数组中的完美解决方案。这些阵列是动态的(将来可能会增加50多个)。因此,我们必须使用count()或for loops取回然后合并。
这是我要在核心级别解析的代码。请任何人告诉我如何在Single数组中接收所有值。
Array(
[0] => Array
(
[0] => 123
[1] => 108
[2] => 58
[3] => 23
)
[1] => Array
(
[0] => 93
[1] => 94
[2] => 95
[3] => 172
[4] => 30
)
[2] => Array
(
[0] => 109
[1] => 81
[2] => 79
[3] => 155 )
)`
Run Code Online (Sandbox Code Playgroud)
我对结果的期望是:(我无法获得)
Array
(
[0] => 123
[1] => 108
[2] => 58
[3] => 23
[4] => …Run Code Online (Sandbox Code Playgroud) 我希望将一个L1 的元素放在另一个L2的前面,但我找不到开箱即用的方式来做到这一点。我不想创建第三个ArrayList,因为L2是视图层中正在使用的List,所以我不想乱搞。据我所知,也没有这样的实用程序方法。java.util.ArrayListjava.util.ArrayListjava.util.Collectionsorg.apache.commons.collections.CollectionUtils
如何最好使用现有API有效地将ArrayList附加到另一个ArrayList?对于Java 7环境。
PS:addAll追加,我想先。
我声明了一个PersonDetails具有以下三个属性的对象:
long id;
String residence;
Run Code Online (Sandbox Code Playgroud)
然后,我有一个全部填充ArrayList的PersonDetails对象:
List<PersonDetails> personDetailsList = new ArrayList<>();
Run Code Online (Sandbox Code Playgroud)
我需要遍历此列表,以PersonDetails通过匹配其residence属性来找出重复项。
Id | Residence
1 | a
2 | b
3 | a
4 | a
5 | b
6 | c
7 | c
8 | d
Run Code Online (Sandbox Code Playgroud)
我为完成此操作而创建的代码/算法如下,并使用nested for loop,这实际上效率很低:
List<PersonDetails> personDetailsList = new ArrayList<>();
for (int i = 0; i <= personDetailsList.size() - 1; i++) {
long personId = personDetailsList.get(i)
.getId();
String personResidence = personDetailsList.get(i)
.getResidence(); …Run Code Online (Sandbox Code Playgroud) public static void main (String[]args) {
ArrayList<Integer> x= new ArrayList<Integer>();
for (int i=0;i<Integer.MAX_VALUE;i++) {
x.add(i);
}
}
Run Code Online (Sandbox Code Playgroud)
为什么我的内存不足?有什么办法可以将很多值存储到列表中,例如从Integer.Min_value到Integer.Max_value?
arraylist ×10
java ×9
list ×3
arrays ×2
collections ×2
casting ×1
duplicates ×1
function ×1
java-8 ×1
java-stream ×1
object ×1
performance ×1
php ×1
slick2d ×1