明确概念:
既然说到了数组,首先,我们先明确一下数组的概念:相同数据类型的元素按一定顺序排列的集合。
Java中,数组元素可以为简单数据类型,也可以为对象。
那么,既然是相同数据类型的元素的排列,那么他们在内存中的存放也是按照这个先后顺序的。
定义方式:
java中数组一般是要先声明,后创建空间,然后再创建数组元素并赋值。
其定义的方式有四种:
数据类型[ ] 数组名; //声明一维数组
数组名=new 数据类型[个数];//动态分配内存给数组
数据类型[ ] 数组名= new 数据类型[个数];
数据类型[ ] 数组名= new 数据类型[个数]{"赋初值"};
数据类型[ ] 数组名; //声明一维数组
数组名=new 数据类型[个数]{"赋初值"};//动态分配内存给数组
数组的方法:
数组里面只有一个唯一的方法,就是length
两个练习:
1.一维数组的各种排序方法
package 数组; import java.util.Random; public class Kindsort { /** * 各种排序方法 */ public static void main(String[] args) { Kindsort sort = new Kindsort(); //在这里使用下面的方法即可 sort.quick(); System.out.println("==========================================="); sort.shellsort(); System.out.println("==========================================="); sort.insort(); System.out.println("==========================================="); sort.selectsort(); } //人工快速排序 private void quick() { int[] array = new int[5]; for(int i=0;i<5;i++){ Random rand = new Random(); array[i]=rand.nextInt(500); } for(int i=0;i<5;i++){ for(int j=0;j<5;j++){ int temp =array[i]; if(temp <= array[j]){ array[i] = array[j]; array[j] = temp; }else{ continue; } } } for(int i=0;i<5;i++){ System.out.println(array[i]); } } //希尔排序 private void shellsort() { int[] array = new int[5]; for(int i=0;i<5;i++){ Random rand = new Random(); array[i]=rand.nextInt(500); } for (int in = array.length / 2; in > 0; in /= 2) { for (int i = in; i < array.length; i++) { int t = array[i]; int j = 0; for (j = i; j >= in; j = j - in) { if (t < array[j - in]) { array[j] = array[j - in]; } else { break; } } array[j] = t; } } for (int i = 0; i < array.length; i++) System.out.println(array[i] + "\t"); } //插入排序 private void insort() { int[] array = new int[5]; for(int i=0;i<5;i++){ Random rand = new Random(); array[i]=rand.nextInt(500); } for (int i = 1; i < array.length; i++) { for (int j = i; j > 0; j--) { if (array[j] < array[j - 1]) { int t = array[j]; array[j] = array[j - 1]; array[j - 1] = t; } } } for (int i = 0; i < array.length; i++) System.out.println(array[i] + "\t"); } //选择排序 private void selectsort() { int[] array = new int[5]; for(int i=0;i<5;i++){ Random rand = new Random(); array[i]=rand.nextInt(500); } for (int i = 0; i < array.length; i++) { int min = i; for (int j = i + 1; j < array.length; j++) { if (array[min] > array[j]) min = j; } int t = array[i]; array[i] = array[min]; array[min] = t; } for (int i = 0; i < array.length; i++) System.out.println(array[i] + "\t"); } }
2.找出二维数组的最大值
package 数组; import java.util.Random; //算二维数组的最大值 public class Findsort{ public static void main(String args[]){ int a[][]=new int[2][5]; Random rand=new Random(); for(int i=0;i<2;i++){ for(int j=0;j<5;j++){ a[i][j]=rand.nextInt(30); System.out.println("a["+i+"]["+j+"]="+a[i][j]); } } int max; Findsort p=new Findsort(); max=p.maxv(a); System.out.println("max="+max); } public int maxv(int arr1[][]){ int i,j,max; max=arr1[0][0]; for(i=0;i<arr1.length;i++) for(j=0;j<arr1[i].length;j++) if(arr1[i][j]>max) max=arr1[i][j]; return max; } }
相关推荐
在Java编程语言中,数组是一种特殊的数据结构,用于存储...通过这个实例,我们可以深入理解Java中一维数组的创建、初始化和遍历的基本概念,这对于后续学习更复杂的数组操作,如多维数组和数组操作函数,奠定了基础。
通过对以上实验的学习,我们可以更深入地理解 Java 中字符串和数组的基本操作。特别是对于字符串,我们不仅学习了如何使用 String 类进行各种字符串处理操作,还掌握了 StringBuffer 类的动态字符串操作能力。此外,...
数组的大小一旦被创建不能改变,如果需要对数组的大小进行扩展,通常需要使用另一种数据对象:Vector。 数组的初始化可以在声明数组的同时给数组一个初始值,例如:int num [ ] = {2, 4, 4, 1};创建数组后,系统会...
在Java编程中,从键盘输入数据并进行对象数组的排序是一项常见的操作,尤其对于初学者来说,这有助于理解和掌握面向对象编程的基本概念。本篇将详细介绍如何实现这一过程。 首先,我们需要创建一个对象类,例如我们...
数组是编程语言中基础且重要的数据结构之一,对于初级JAVA学习者来说,理解和掌握数组的用法至关重要。这里我们有12道精选的数组例题,它们可以帮助你深入理解Java中的数组概念及其应用。 1. **数组定义与初始化**...
Java二维数组实战案例 Java二维数组是一种非常重要的数据结构,在Java编程中广泛应用于数据存储和处理。本文将详细介绍Java二维数组的定义...通过本文的介绍和实战案例,读者可以更好地理解和掌握Java二维数组的使用。
本文将深入探讨Java数组的声明和创建过程,通过具体示例以及相关的概念解析,帮助读者更好地理解和掌握数组的相关知识。 首先,要掌握Java数组的声明方式。数组变量的声明涉及到指定数组元素的数据类型以及数组变量...
Java数组是程序设计中不可或缺的基础概念,主要用于存储一组相同类型的元素。在Java中,数组是一种对象,它提供了按索引访问数据的能力,索引通常是从0开始的。本篇文章将详细解析Java数组的基本操作方法。 1. **...
在编程世界中,数组是一种非常基础且重要的数据结构,它在Java编程语言中扮演着核心角色。本笔记主要关注Java中的数组概念、操作以及在实际编程中的应用,非常适合初学者进行学习和练习。 首先,我们要了解什么是...
在JAVA编程领域,个人资料可能涉及的是开发者的技能集、项目经验以及对Java技术的深入理解。以下将根据提供的文件名来详细解析相关的Java知识点: 1. **Java总结.doc**:这可能是对Java语言核心概念的全面概述,...
数组在Java中是一个非常基础且重要的数据结构,它允许程序员存储和管理多个同类型的元素。数组分为一维数组和多维数组。 1. 一维数组:一维数组类似于一个线性的列表,每个元素通过一个下标(索引)来访问。声明一...
在本Java学习笔记中,我们将深入探讨数组和排序算法这两个核心概念,它们是任何程序员学习Java编程时的...希望这份笔记能对你的学习有所帮助,同时提供的两个文件格式不同,你可以根据个人喜好选择阅读方式,加深理解。
在Java编程中,我们经常需要对集合进行操作,尤其是在处理大量字符串数据时。本文将详细介绍如何将一个`List<String>`类型的集合转换为`String[]`数组,并通过不同的方法来实现这一过程。这不仅有助于提高代码的...
对于初学者来说,分析和理解这样的程序源码,可以提升对Java语言的理解,同时了解实际的业务需求如何转化为代码。 总之,这个Java编写的个人所得税计算程序涉及到的核心知识点有:命令行交互、基础的数学计算、面向...
Java数组倒置 简单 Java图片加水印,支持旋转和透明度设置 摘要:Java源码,文件操作,图片水印 util实现Java图片水印添加功能,有添加图片水印和文字水印,可以设置水印位置,透明度、设置对线段锯齿状边缘处理、...
在Java中,我们可以用数组或者HashMap来存储这些数据。 接着,我们将设计一个计算个人所得税的函数。输入参数为个人的总收入,函数会遍历税率表,对每个收入段进行计算,将超出部分按相应税率纳税,累积计算出总...
**Java编程语言与程序逻辑** Java是一种广泛使用的高级编程语言,以其“一次编写,到处运行”的跨平台特性而闻名。...对于每一个主题,深入学习和理解其背后的原理和应用,将有助于提升个人的编程技能和问题解决能力。
在第一章“初识Java”中,我们将更深入地学习Java的基本语法,包括变量、运算符、流程控制语句(如if、for、while)以及数组。此外,我们还会探索Eclipse的更多功能,如代码自动完成、重构和错误检查,以提高开发...
理解了Java的链表,就能轻松理解其他语言中的链表实现,并进行跨语言的开发。 总的来说,理解和掌握Java链表对于任何Java开发者来说都是必要的,无论是为了优化算法效率,还是为了更好地进行多语言编程。通过阅读...