
Java-旋转数组
因此,目标是将阵列中的元素正确旋转a一次。举个例子; 如果a==2, array = {0,1,2,3,4}则将成为array ={3,4,0,1,2}这是我所拥有的:for (int x = 0; x <= array.length-1; x++){ array[x+a] = array[x];}但是,这无法说明何时[x+a]大于数组的长度。我读到我应该将更大的存储在另一个Array中,但是看到a变量是不确定的,因此...
2024-01-10
Java中的不可变数组
有没有Java原始数组的不变选择?制作一个原始数组final实际上并不能阻止人们做类似的事情final int[] array = new int[] {0, 1, 2, 3};array[0] = 42;我希望数组的元素不可更改。回答:不适用于原始数组。你将需要使用列表或其他数据结构:List<Integer> items = Collections.unmodifiableList(Arrays.asList(0,1,2,3));...
2024-01-10
Java不可修改的数组
final Integer[] arr={1,2,3};arr[0]=3;System.out.println(Arrays.toString(arr));我尝试了上面的代码,看是否可以重新分配最终数组的变量[ :it可以是]。我知道,通过最终Integer[]数组,这意味着我们无法分配除拥有的Integer []之外的另一个实例。我想知道是否有可能使数组变量也不能修改。回答:据我所知这是不可...
2024-01-10
Java解压缩字节数组
在服务器(C ++)上,二进制数据使用以下ZLib函数压缩:compress2()并将其发送到客户端(Java)。在客户端(Java)上,应使用以下代码段对数据进行解压缩:public static String unpack(byte[] packedBuffer) { InflaterInputStream inStream = new InflaterInputStream(new ByteArrayInputStream( packedBuffer); ByteArrayOutputSt...
2024-01-10
Java数组,查找重复项
我有一个数组,正在寻找重复项。duplicates = false;for(j = 0; j < zipcodeList.length; j++){ for(k = 0; k < zipcodeList.length; k++){ if (zipcodeList[k] == zipcodeList[j]){ duplicates = true; } }}但是,当没有重复项时,此代码不起作用。为什么?回答:duplicates=false;for ...
2024-01-10
用Java创建Set数组
我是Java的新手,所以我在这里可能做错了什么,我想创建一个Sets数组,但会收到一个错误(来自Eclipse)。我有一堂课:public class Recipient {String name;String phoneNumber;public Recipient(String nameToSet, String phoneNumberToSet){ name = nameToSet; phoneNumber = phoneNumberToSet;}void setName(String n...
2024-01-10
数组是Java中的对象吗
在Java中,我们可以声明一个数组,例如String[] array = new String[10]; int size = array.length; 这是否意味着数组本身是一个对象?因为在C ++中,数组只是一个指针,没有任何方法。回答:Java语言规范的第4.3.1节从以下内容开始:对象是类实例或数组。...
2024-01-10
用Java方法返回两个数组
考虑到我有两个数组,例如:String[] array1 = new String[10];int[] array2= new int[10];这样,在一个方法中,我计算了两个数组,即array1&array2,现在我想返回这两个数组。我应该怎么做?我在这里读到我可以创建另一个类并定义某些对象类型,并将这些数组封装在该类构造函数中,但是我仍然感到困惑,并...
2024-01-10
如何在Java中过滤数组?
如何过滤Java中的数组?我有一系列对象,例如汽车:类:public class Car{ public int doors; public Car(int d){ this.doors = d; }}用:Car [] cars = new Cars[4];cars[0] = new Car(3);cars[1] = new Car(2);cars[2] = new Car(4);cars[3] = new Car(6);现在我要过滤汽车阵列,只保留4门或更多:for(int...
2024-01-10
Java 通用数组创建错误
我正在尝试做这样的事情:public static ArrayList<myObject>[] a = new ArrayList<myObject>[2];myObject是一个类。我收到此错误:-通用数组创建(箭头指向new。)回答:你不能有泛型类的数组。Java根本不支持它。你应该考虑使用集合而不是数组。例如,public static ArrayList<List<MyObject>> a = new ArrayList<List<MyObject>();另...
2024-01-10
如何在Java中实现数组?
数组在Java中被实现为对象,对吗?如果是这样,我可以在哪里查看数组类的源代码。我想知道数组中的length变量是否定义为常量,如果是这样,为什么不是全部使用大写字母LENGTH来使代码更易于理解。回答:尽管从它们继承java.lang.Object的角度来看,数组是Object,但是这些类是作为语言的特殊功能动态...
2024-01-10
Java数组有最大大小吗?
Java数组可以包含的元素数量是否有限制?如果是这样,那是什么?回答:即使测试很容易,也没有找到正确的答案。在最新的HotSpot VM中,正确的答案是Integer.MAX_VALUE - 5。一旦超出此范围:public class Foo { public static void main(String[] args) { Object[] array = new Object[Integer.MAX_VALUE - 4]; }}你得到:Exception ...
2024-01-10
Java如何创建通用数组?
我不理解泛型和数组之间的联系。我可以使用通用类型创建数组引用:private E[] elements; //GOOD但是不能创建具有通用类型的数组对象:elements = new E[10]; //ERROR但它有效:elements = (E[]) new Object[10]; //GOOD回答:你不应该混淆数组和泛型。他们在一起不好。数组和泛型类型执行类型检查的方式有所不同...
2024-01-10
比较Java中的两个整数数组
我正在尝试编写代码以比较两个数组。在第一个数组中,我输入了自己的数字,但是在第二个数组中,输入了输入文件中的数字。该数组的大小由文件中的第一个数字确定,而第一个数组的大小始终为10。两个数组以及数字的长度必须相同。我的代码如下:public static void compareArrays(int[] array1, int[] array2)...
2024-01-10
Java将整数转换为字节数组
将转换Integer为的快速方法是Byte Array什么?例如 0xAABBCCDD => {AA, BB, CC, DD}回答:看看ByteBuffer类。ByteBuffer b = ByteBuffer.allocate(4);//b.order(ByteOrder.BIG_ENDIAN); // optional, the initial order of a byte buffer is always BIG_ENDIAN.b.putInt(0xAABBCCDD);byte[] result =...
2024-01-10
Java-从图像获取像素数组
我正在寻找从中获取像素数据(以表格形式int[][])的最快方法BufferedImage。我的目标是能够解决像素(x, y)从使用图像int[x][y]。我发现的所有方法均不执行此操作(大多数方法都返回int[]s)。回答:我只是在玩同一个主题,这是访问像素的最快方法。我目前知道执行此操作的两种方法:使用getRGB()@tskuzzy...
2024-01-10
如何在Java中复制二维数组?
我需要为正在进行的项目制作一个相当大的二维数组的副本。我有两个2D阵列:int[][]current;int[][]old;我也有两种方法来进行复制。我需要复制数组,因为当前会定期更新。public void old(){ old=current}和public void keepold(){ current=old}但是,这不起作用。如果我叫old,对current进行更新,然后再调用keepold...
2024-01-10
Java 创建一个数组列表数组
我想要创建一个arraylist数组,如下所示:ArrayList<Individual>[] group = new ArrayList<Individual>()[4]但是它没有编译。我怎样才能做到这一点?回答:根据Oracle文档:“你不能创建参数化类型的数组”相反,你可以执行以下操作:ArrayList<ArrayList<Individual>> group = new ArrayList<ArrayList<Individual>>(4);正如汤姆·霍廷...
2024-01-10
比较两个字节数组?(Java)
我有一个带有〜已知二进制序列的字节数组。我需要确认二进制序列是应该的。.equals除之外==,我还尝试了其他方法,但均无济于事。byte[] array = new BigInteger("1111000011110001", 2).toByteArray();if (new BigInteger("1111000011110001", 2).toByteArray() == array){ System.out.println("the same");} else { System.out....
2024-01-10
Java 查找数组中第二高的数字
我很难理解在数组中找到第二大数字的方法背后的逻辑。所使用的方法是在数组中找到最高的,但小于先前最高的(已经找到)。我仍然不明白的是为什么|| highest_score == second_highest有必要。例如,我输入了三个数字:98、56、3。没有它,最高和第二高将都是98。请解释。int second highest = score[0]; if (score[...
2024-01-10
Java:XML到对象(或数组)
如何将XML文档转换为Java对象(或数组)?我这样阅读XML:DocumentBuilderFactory dFactory = DocumentBuilderFactory.newInstance();DocumentBuilder dBuilder = dFactory.newDocumentBuilder();Document doc = dBuilder.parse(new File("file.xml"));doc.getDocumentElement().normalize();现在,我希望将...
2024-01-10
Java:将文件中的整数读入数组
File fil = new File("Tall.txt");FileReader inputFil = new FileReader(fil);BufferedReader in = new BufferedReader(inputFil);int [] tall = new int [100];String s =in.readLine();while(s!=null){ int i = 0; tall[i] = Integer.parseInt(s); //this is line 19...
2024-01-10
Java中的可变长度(动态)数组
我想知道如何初始化整数数组,使其大小和值在程序执行过程中发生变化,有什么建议吗?回答:是的:使用ArrayList。在Java中,“普通”数组是固定大小的。您必须给它们一个尺寸,并且不能扩展或收缩它们。要更改大小,您必须创建一个新数组并复制所需的数据-这效率低下,给您带来痛苦。幸运...
2024-01-10
什么时候在Java中使用数组列表?
在Java中,何时优先使用列表而不是数组?回答:我认为问题是相反的-什么时候应该在列表上使用数组?只有您有特定的理由这样做(例如:项目约束,内存问题(不是很好的理由)等)列表更易于使用(imo),并且具有更多功能。注意:您还应该考虑是否像Set或其他数据结构这样的东西比List更适...
2024-01-10
Java中的数组或列表.哪个更快?
我必须在内存中保留数千个字符串才能以Java顺序访问。我应该将它们存储在数组中还是应该使用某种List?由于数组将所有数据保存在连续的内存块中(与列表不同),使用数组存储数千个字符串会不会引起问题?回答:我建议您使用探查器来测试哪个更快。我个人认为您应该使用列表。我在大型代...
2024-01-10
