「java数组教案」java数组的实现原理
本篇文章给大家谈谈java数组教案,以及java数组的实现原理对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。
本文目录一览:
- 1、java程序实验十一 面向对象 实验目的: 数组及集合的使用及实现; 要求: 掌握数组及集合操作的
- 2、java中怎么作用数组,来个实例,谢谢
- 3、JAVA编程 数组
- 4、java数组课程设计代码
- 5、谁帮我讲解下Java的数组及下标的范围啊
- 6、Java中数组的定义与使用方法
java程序实验十一 面向对象 实验目的: 数组及集合的使用及实现; 要求: 掌握数组及集合操作的
package com;
import java.util.*;
public class Student{
private String name;
private String id;
private double sumscore;
public Student(String name,String id,double sumscore){
this.name=name;
this.id=id;
this.sumscore=sumscore;
}
public String toString() {
return "name:"+getName()+" id:"+getId()+" sumscore:"+getSumscore();
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public double getSumscore() {
return sumscore;
}
public void setSumscore(double sumscore) {
this.sumscore = sumscore;
}
public static void main(String[] args) {
Student []s={new Student("A","1",12),new Student("B","2",22),new Student("C","3",32),
new Student("D","4",142),new Student("E","5",152),new Student("F","6",262),new Student("G","7",72),
new Student("H","8",182),new Student("I","9",92),new Student("J","10",102)
};
s=bubbleSort(s);
VectorStudent vector = new VectorStudent();
vector.addAll(Arrays.asList(s));
for (IteratorStudent iter = vector.iterator(); iter.hasNext();)
{
Student student = iter.next();
System.out.println(student.toString());
}
List Studentlist=new ArrayListStudent();
list=Arrays.asList(s);
for(Student str:list){
System.out.println(str.toString());
}
Hashtable Integer,Studenttable =new HashtableInteger,Student();
for(int i=0;is.length;i++){
table.put(i, s[i]);
}
for(int i=0;is.length;i++){
System.out.println(table.get(i).toString());
}
}
public static Student[] bubbleSort(Student[] args){//冒泡排序算法
Student temp;
for(int i=0;iargs.length-1;i++){
for(int j=i+1;jargs.length;j++){
if (args[i].getSumscore()args[j].getSumscore()){
temp=args[i];
args[i]=args[j];
args[j]=temp;
}
}
}
return args;
}
}
//楼主,说实话你的要求真多,而且分少~~~~
java中怎么作用数组,来个实例,谢谢
冒泡排序法
1. public class SortArray_01 {
2. public static void main(String args[]) {
3. int[] array = { 14, 5, 86, 4, 12, 3, 21, 13, 11, 2, 55 }; // 创建一个初始化的一维数组array
4. System.out.println("未排序的数组:");
5. for (int i = 0; i array.length; i++) { // 遍历array数组中的元素
6. System.out.print(" " + array[i]); // 输出数组元素
7. if ((i + 1) % 5 == 0) // 每5个元素一行
8. System.out.println();
9. }
10. int mid; // 定义一个中间变量,起到临时存储数据的作用
11. for (int i = 0; i array.length; i++) { // 执行冒泡排序法
12. for (int j = i; j array.length; j++) {
13. if (array[j] array[i]) {
14. mid = array[i];
15. array[i] = array[j];
~ 1 / 8 ~
16. array[j] = mid;
17. }
18. }
19. }
20. System.out.println("\n使用冒泡法排序后的数组:");
21. for (int i = 0; i array.length; i++) { // 遍历排好序的array数组中的元素
22. System.out.print(" " + array[i]); // 输出数组元素
23. if ((i + 1) % 5 == 0)
24. System.out.println(); // 每5个元素一行
25. }
26. }
27. }
数组递增排序
1. import java.util.Arrays;
2. import java.util.Random;
3.
4. public class SortArray_02 {
5. public static void main(String[] args) {
6. Random rd = new Random();
7. int[] array = new int[15]; // 声明数组
8. System.out.println("没有使用sort方法前的数组:");
9. for (int i = 0; i array.length; i++) { // 利用随机数随意产生15个0~20之间的随机数
10. array[i] = rd.nextInt(20); // 给array数组赋值
~ 2 / 8 ~
11. System.out.print(" " + array[i]);
12. if ((i + 1) % 5 == 0)
13. System.out.println();
JAVA编程 数组
public class getMin{
public static void main(String args[]){
int[] point ={18,25,7,36,13,2,89,63};//创建数组points[],存储八名顾客的积分
int index = 0;
int min = point[0];//定义变量min存储最低积分,定义变量index存储最低积分下标。假设第一个元素为最低积分0,下标为0.
for(int i = 1 ; i point.length; i++)//遍历数组,将数组元素和min的值进行比较。
{
if(min point[i])
{
min = point[i];
index = i;
}
}
System.out.println("最低积分是" + min + " 他的下标是" + index);
}
}
java数组课程设计代码
public static void main(String[] args) {
/**
*
* (1)实现整型数组的创建要求由用户输入数组长度以及数组元素
*/
Scanner input = new Scanner(System.in);
System.out.print("请输入整型数组的长度:");
int lengthInt = input.nextInt();
int[] arrInt = new int[lengthInt];
for (int i = 0; i arrInt.length; i++) {
System.out.println("请输入第" + (i + 1) + "个元素");
arrInt[i] = input.nextInt();
}
System.out.print("整型数组:");
for (int i = 0; i arrInt.length; i++) {
System.out.print(arrInt[i] + "\t");
}
System.out.println();
/**
*
* (2)查找数组中最大值最小值以及求平均值
*/
int max = 0;
int min = arrInt[0];
double sum = 0;
for (int i = 0; i arrInt.length; i++) {
if (arrInt[i] max) {
max = arrInt[i];
}
if (arrInt[i] min) {
min = arrInt[i];
}
sum += arrInt[i];
}
double avg = sum / arrInt.length;
System.out.println("最大值:" + max);
System.out.println("最小值:" + min);
System.out.println("平均值:" + avg);
/**
*
* (3)实现数组的排序,有用户选择何种方式
*/
System.out.println("请选择排序的方式(输入数字即可):");
System.out.println("1:由小到大,2:由大到小");
int a = input.nextInt();
switch (a) {
case 1:
int i,
j,
t;
for (i = 0; i arrInt.length - 1; i++) {
for (j = 0; j arrInt.length - i - 1; j++) {
if (arrInt[j + 1] arrInt[j]) {
t = arrInt[j + 1];
arrInt[j + 1] = arrInt[j];
arrInt[j] = t;
}
}
}
break;
case 2:
int x,
y,
z;
for (x = 0; x arrInt.length - 1; x++) {
for (y = 0; y arrInt.length - x - 1; y++) {
if (arrInt[y + 1] arrInt[y]) {
z = arrInt[y + 1];
arrInt[y + 1] = arrInt[y];
arrInt[y] = z;
}
}
}
break;
default:
System.out.println("输入有误");
break;
}
for (int k = 0; k arrInt.length; k++) {
System.out.print(arrInt[k] + "\t");
}
System.out.println();
/**
*
* (4)实现数组的插入,并对插入后的数组重排序
*/
System.out.println("该数据长度为" + arrInt.length + ",插入数据后也记录最后" + "个的元素");
boolean ref = true;
do {
System.out.println("请插入元素:");
for (int i = 0; i arrInt.length; i++) {
if (i arrInt.length - 1)
arrInt[i] = arrInt[i + 1];
else
arrInt[i] = input.nextInt();
}
System.out.println("是否再插入新的元素?(是:Y,否:其他任何字符)");
if (!input.next().equalsIgnoreCase("y")) {
ref = false;
}
} while (ref);
System.out.print("插入元素后的数组:");
for (int i = 0; i arrInt.length; i++) {
System.out.print(arrInt[i] + "\t");
}
System.out.println();
/**
*
* (5)实现对某个数组的删除或者修改操作
*/
System.out.println("请选择操作:1.删除;2.修改");
int d = input.nextInt();
System.out.println("请输入要操作的元素下标:(输入0-" + (arrInt.length - 1)
+ "之内的数字即可):");
int index = input.nextInt();
System.out.println(index);
int[] arrs = new int[arrInt.length - 1];
switch (d) {
case 1:
for (int i = 0; i arrInt.length - 1; i++) {
if (i == index index arrInt.length - 1) {
arrs[i] = arrInt[index + 1];
} else if (i index index arrInt.length - 1) {
arrs[i] = arrInt[i + 1];
} else {
arrs[i] = arrInt[i];
}
}
for (int i = 0; i arrs.length; i++) {
System.out.print(arrs[i] + "\t");
}
break;
case 2:
System.out.println("请输入新的元素:");
int num = input.nextInt();
arrInt[index] = num;
for (int i = 0; i arrInt.length; i++) {
System.out.print(arrInt[i] + "\t");
}
break;
default:
System.out.println("输入有误");
break;
}
}
谁帮我讲解下Java的数组及下标的范围啊
在java中数组有这么几种声明 方式。
1. int[] arrs = new int[10];
这种方式等同于int arrs[] = new int[10];
因为数组的长度是固定的,所以在声明的时候必须指定数组的长度。上面我声明了一个10个长度的数组。
下标呢,是从0开始到数组长度的上一位,即 数组长度 - 1,上面的数组最大下标是9。
存取值的时候要通过下边来操作。
例:arr[0] = 1;
arr[1] = 2;
arr[9] = 10;
这样他就会在相应的位置存储给定的值。如果这样 arr[10]就会抛异常,因为最大下标只有9.
取值也是通过下标
例: int num = arr[0]; 这样取到的就是1.
因为数组长度是固定的,所以就算不存值也是会占内存的,
例:int num = arr[8];
我并没给8下标的存值,但是它输出的是0,因为数组时引用类型,默认值是0,自己可以查一下。
还有一种
int[] arrs = new int[]{1,2,3,4,5,6};
声明加赋值的方式,这样后边的中括号就不能制定数组长度了,数组长度根据值的数量决定。
上边这个数组长度就是6,其他用法一样。
Java中数组的定义与使用方法
Java中数组的定义与使用方法:
1、数组的定义
语法有两种:
type arrayName[];
type[] arrayName;
type 为Java中的任意数据类型,包括基本类型和组合类型,arrayName为数组名,必须是一个合法的标识符,[ ] 指明该变量是一个数组类型变量。
例如:
int demoArray[];
int[] demoArray;
这两种形式没有区别,使用效果完全一样,读者可根据自己的编程习惯选择。
注意:Java在定义数组时并不为数组元素分配内存,因此[ ]中无需指定数组元素的个数,即数组长度。而且对于如上定义的一个数组是不能访问它的任何元素的,开发者必须要为它分配内存空间,这时要用到运算符new,其格式如下:
arrayName=new type[arraySize];
其中,arraySize 为数组的长度,type 为数组的类型。如:
demoArray=new int[3];//为一个整型数组分配3个int 型整数所占据的内存空间。
2、数组的初始化
可以在声明数组的同时进行初始化(静态初始化),也可以在声明以后进行初始化(动态初始化)。例如:
// 静态初始化
// 静态初始化的同时就为数组元素分配空间并赋值
int intArray[] = {1,2,3,4};
String stringArray[] = {"zhidao", "baidu", "百度知道"};
// 动态初始化
float floatArray[] = new float[3];
floatArray[0] = 1.0f;
floatArray[1] = 132.63f;
floatArray[2] = 100F;
3、数组的使用:
每个数组都有一个length属性来指明它的长度,例如 intArray.length 指明数组 intArray 的长度。
【示例】写一段代码,要求输入任意5个整数,输出它们的和。
import java.util.*;
public class Demo {
public static void main(String[] args){
int intArray[] = new int[5];
long total = 0;
int len = intArray.length;
// 给数组元素赋值
System.out.print("请输入" + len + "个整数,以空格为分隔:");
Scanner sc = new Scanner(System.in);
for(int i=0; ilen; i++){
intArray[i] = sc.nextInt();
}
// 计算数组元素的和
for(int i=0; ilen; i++){
total += intArray[i];
}
System.out.println("所有数组元素的和为:" + total);
}
}
运行结果:
请输入5个整数,以空格为分隔:10 20 15 25 50
所有数组元素的和为:120
java数组教案的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于java数组的实现原理、java数组教案的信息别忘了在本站进行查找喔。