常用的Java数组操作
来源:互联网 发布:淘宝客户管理系统 编辑:程序博客网 时间:2024/05/16 18:35
如何对数组进行排序和搜索里面的元素?解决方法下面的示例演示如何使用sort()和binarySearch()方法来完成任务。用户自定义方法PrintArray()用于显示输出:import java.util.Arrays;public class MainClass { public static void main(String args[]) throws Exception { int array[] = { 2, 5, -2, 6, -3, 8, 0, -7, -9, 4 }; Arrays.sort(array); printArray("Sorted array", array); int index = Arrays.binarySearch(array, 2); System.out.println("Found 2 @ " + index); } private static void printArray(String message, int array[]) { System.out.println(message + ": [length: " + array.length + "]"); for (int i = 0; i < array.length; i++) { if(i != 0){ System.out.print(", "); } System.out.print(array[i]); } System.out.println(); }}结果上面的代码示例将产生以下结果。 Sorted array: [length: 10]-9, -7, -3, -2, 0, 2, 4, 5, 6, 8Found 2 @ 5
如何排序数组,并插入元素到数组中?解决方法下面的示例演示如何使用sort()方法和用户定义的方法insertElement()来完成任务。import java.util.Arrays;public class MainClass { public static void main(String args[]) throws Exception { int array[] = { 2, 5, -2, 6, -3, 8, 0, -7, -9, 4 }; Arrays.sort(array); printArray("Sorted array", array); int index = Arrays.binarySearch(array, 1); System.out.println("Didn't find 1 @ " + index); int newIndex = -index - 1; array = insertElement(array, 1, newIndex); printArray("With 1 added", array); } private static void printArray(String message, int array[]) { System.out.println(message + ": [length: " + array.length + "]"); for (int i = 0; i < array.length; i++) { if (i != 0){ System.out.print(", "); } System.out.print(array[i]); } System.out.println(); } private static int[] insertElement(int original[], int element, int index) { int length = original.length; int destination[] = new int[length + 1]; System.arraycopy(original, 0, destination, 0, index); destination[index] = element; System.arraycopy(original, index, destination, index + 1, length - index); return destination; }}结果上面的代码示例将产生以下结果。 Sorted array: [length: 10]-9, -7, -3, -2, 0, 2, 4, 5, 6, 8Didn't find 1 @ -6With 1 added: [length: 11]-9, -7, -3, -2, 0, 1, 2, 4, 5, 6, 8
如何确定一个二维数组的上限或长度?解决方法下面的例子可帮助确定一个二维数组的上限,使用arrayname.length。public class Main { public static void main(String args[]) { String[][] data = new String[2][5]; System.out.println("Dimension 1: " + data.length); System.out.println("Dimension 2: " + data[0].length); }}结果上面的代码示例将产生以下结果。 Dimension 1: 2Dimension 2: 5如何逆转数组列表?解决方法下面的示例反转使用Collections.reverse(ArrayList)方法的数组列表。import java.util.ArrayList;import java.util.Collections;public class Main { public static void main(String[] args) { ArrayList arrayList = new ArrayList(); arrayList.add("A"); arrayList.add("B"); arrayList.add("C"); arrayList.add("D"); arrayList.add("E"); System.out.println("Before Reverse Order: " + arrayList); Collections.reverse(arrayList); System.out.println("After Reverse Order: " + arrayList); }}结果上面的代码示例将产生以下结果。 Before Reverse Order: [A, B, C, D, E]After Reverse Order: [E, D, C, B, A]如何编写让一个字符串数组到输出控制台?解决方法下面的例子演示了通过循环写入数组元素到输出控制台。public class Welcome { public static void main(String[] args){ String[] greeting = new String[3]; greeting[0] = "This is the greeting"; greeting[1] = "for all the readers from"; greeting[2] = "Java Source ."; for (int i = 0; i < greeting.length; i++){ System.out.println(greeting[i]); } }}结果上面的代码示例将产生以下结果。 This is the greetingFor all the readers FromJava source .
如何搜索数组中最小和最大元素?解决方法这个例子显示了如何通过使用 Collection类的Collection.max()和Collection.min()方法来搜索一个数组中的最小和最大元素。import java.util.Arrays;import java.util.Collections;public class Main { public static void main(String[] args) { Integer[] numbers = { 8, 2, 7, 1, 4, 9, 5}; int min = (int) Collections.min(Arrays.asList(numbers)); int max = (int) Collections.max(Arrays.asList(numbers)); System.out.println("Min number: " + min); System.out.println("Max number: " + max); }}结果上面的代码示例将产生以下结果。 Min number: 1Max number: 9如何合并两个数组?解决方法这个例子显示了如何通过使用List类的 list.Addall(array1.asList(array2)方法和Array类的Arrays.toString()方法将两个数组合并成一个数组。 import java.util.ArrayList;import java.util.Arrays;import java.util.List;public class Main { public static void main(String args[]) { String a[] = { "A", "E", "I" }; String b[] = { "O", "U" }; List list = new ArrayList(Arrays.asList(a)); list.addAll(Arrays.asList(b)); Object[] c = list.toArray(); System.out.println(Arrays.toString(c)); }}结果上面的代码示例将产生以下结果。 [A, E, I, O, U]
如何填充(初始化)数组?解决方法这个例子中的填充使用Array.fill(arrayname,value)方法和Java Util类的Array.fill(arrayname ,starting index ,ending index ,value) 方法(初始化数组的所有元素为short类型)数组。 import java.util.*;public class FillTest { public static void main(String args[]) { int array[] = new int[6]; Arrays.fill(array, 100); for (int i=0, n=array.length; i < n; i++) { System.out.println(array[i]); } System.out.println(); Arrays.fill(array, 3, 6, 50); for (int i=0, n=array.length; i< n; i++) { System.out.println(array[i]); } }}结果上面的代码示例将产生以下结果。 100100100100100100100100100505050如何初始化后延长一个数组?解决方法下面的示例演示如何通过创建一个新数组来扩展初始化后的数组。public class Main { public static void main(String[] args) { String[] names = new String[] { "A", "B", "C" }; String[] extended = new String[5]; extended[3] = "D"; extended[4] = "E"; System.arraycopy(names, 0, extended, 0, names.length); for (String str : extended){ System.out.println(str); } }}结果上面的代码示例将产生以下结果。ABCDE如何删除数组中的一个元素?解决方法下面的示例演示如何从数组中删除一个元素。import java.util.ArrayList;public class Main { public static void main(String[] args) { ArrayList objArray = new ArrayList(); objArray.clear(); objArray.add(0,"0th element"); objArray.add(1,"1st element"); objArray.add(2,"2nd element"); System.out.println("Array before removing an element"+objArray); objArray.remove(1); objArray.remove("0th element"); System.out.println("Array after removing an element"+objArray); }}结果上面的代码示例将产生以下结果。 Array before removing an element[0th element, 1st element, 2nd element]Array after removing an element[2nd element]如何查找从数组中的公共元素?解决方法下面的示例演示如何找到从两个数组公共元素,并将它们存储在数组中。import java.util.ArrayList;public class Main { public static void main(String[] args) { ArrayList objArray = new ArrayList(); ArrayList objArray2 = new ArrayList(); objArray2.add(0,"common1"); objArray2.add(1,"common2"); objArray2.add(2,"notcommon"); objArray2.add(3,"notcommon1"); objArray.add(0,"common1"); objArray.add(1,"common2"); objArray.add(2,"notcommon2"); System.out.println("Array elements of array1"+objArray); System.out.println("Array elements of array2"+objArray2); objArray.retainAll(objArray2); System.out.println("Array1 after retaining common elements of array2 & array1"+objArray); }}结果上面的代码示例将产生以下结果。 Array elements of array1[common1, common2, notcommon2]Array elements of array2[common1, common2, notcommon,notcommon1]Array1 after retaining common elements of array2 & array1[common1, common2]
如何在Array查找一个对象或一个字符串?解决方法下面的示例使用Contains方法来搜索在Array的String。import java.util.ArrayList;public class Main { public static void main(String[] args) { ArrayList objArray = new ArrayList(); ArrayList objArray2 = new ArrayList(); objArray2.add(0,"common1"); objArray2.add(1,"common2"); objArray2.add(2,"notcommon"); objArray2.add(3,"notcommon1"); objArray.add(0,"common1"); objArray.add(1,"common2"); System.out.println("Array elements of array1"+objArray); System.out.println("Array elements of array2"+objArray2); System.out.println("Array 1 contains String common2?? " +objArray.contains("common1")); System.out.println("Array 2 contains Array1?? " +objArray2.contains(objArray) ); }}结果上面的代码示例将产生以下结果。 Array elements of array1[common1, common2]Array elements of array2[common1, common2, notcommon, notcommon1]Array 1 contains String common2?? trueArray 2 contains Array1?? false如何检查两个数组是否相等?解决方法下面的示例演示如何使用数组的equals()方法来检查两个数组相等与否。import java.util.Arrays;public class Main { public static void main(String[] args) throws Exception { int[] ary = {1,2,3,4,5,6}; int[] ary1 = {1,2,3,4,5,6}; int[] ary2 = {1,2,3,4}; System.out.println("Is array 1 equal to array 2?? " +Arrays.equals(ary, ary1)); System.out.println("Is array 1 equal to array 3?? " +Arrays.equals(ary, ary2)); }}结果上面的代码示例将产生以下结果。 Is array 1 equal to array 2?? trueIs array 1 equal to array 3?? false
阅读全文
1 0
- 常用的Java数组操作
- Java数组常用操作
- java数组常用操作
- java操作数组的常用类
- java中数组的常用操作
- java操作数组的常用类
- Java 数组的 12 个常用操作
- Java-基础 数组的常用操作
- java数组的创建及常用操作
- java的方法定义、数组定义、数组常用操作
- 数组的常用操作
- 数组的常用操作
- JAVA数组常用简单操作
- Java Arrays类对数组的常用操作
- Java中对Array数组的常用操作
- Java Arrays类对数组的常用操作
- Java中对Array数组的常用操作
- Java中对Array数组的常用操作
- #6 块参数
- 并发实战——原子类AtomicReference及底层源码CompareAndSwapObject分析
- Spark的Dataset操作(四)-其他单表操作
- 哈喽
- Linux-bash-管理用户账号
- 常用的Java数组操作
- 文本编辑器
- JMS持久订阅(DurableSubscribe)模式示例
- 编码(python)
- 2017 四川省赛 D.Dynamic Graph (思维 拓扑排序 bitset优化)
- java 23种设计模式
- svn,git及代码托管平台
- 通达OA二次开发 小飞鱼二次开发使用PHP连接SQLServer数据库(源码)
- javascript的面向对象详解