java 中的冒泡排序,方法(静态或非静态)? ,(void or int[] )?,需要实例变量吗?
Bubble sort in java , method (static or non staic)? ,(void or int[] )?,instance variable needed?
谁能帮我解释一下什么时候使用静态/非静态
, void 或 int[]x ,什么时候使用实例变量
因为我似乎无法弄清楚在冒泡排序代码中导致这样的错误的原因
public class PA2 {
//int []a ;
//int maxsize ;
//int temp;
public static int[] bubblesort(int [] a1) {
int temp ;
for(int i=0;i<a.length-1;i++) {
for(int j=0 ; j<a.length-1-i;j++) {
if(a[i]>a[i+1])
temp = a[i];
a[i]=a[i+1];
a[i+1]=temp;
}
}
}
public static void main(String[] args) {
int [] a1 = {11,5,14,10,2};
bubblesort(a1);
//a.bubblesort();
//a.selectionsort();
// a.insertionsort(); } }
冒泡排序是可以被多个 类 和代码使用的东西,所以最好将它作为一个 Utility Method,它主要写成静态的并使用泛型。
静态/非静态:
static = 处于 class 级别并由 class 的所有实例共享的东西。例如 - site_hit_count
是您希望在 class 级别维护的属性。无论创建了多少个实例,都应该看到最新的和当前的值。
应用程序级缓存(例如所有可用产品的目录信息)也是静态的好例子。
非静态 = 任何 class 级别属性,每个实例都会有所不同。例如 - 在一个名为 Person
的 class 中 - name/age/address 等是实例级属性但 不是静态的 因为每个人都有自己的值以上属性。
我建议你读完这个语言基础教程(这会清除上面的很多问题)- https://docs.oracle.com/javase/tutorial/java/nutsandbolts/index.html
谁能帮我解释一下什么时候使用静态/非静态 , void 或 int[]x ,什么时候使用实例变量
因为我似乎无法弄清楚在冒泡排序代码中导致这样的错误的原因
public class PA2 {
//int []a ;
//int maxsize ;
//int temp;
public static int[] bubblesort(int [] a1) {
int temp ;
for(int i=0;i<a.length-1;i++) {
for(int j=0 ; j<a.length-1-i;j++) {
if(a[i]>a[i+1])
temp = a[i];
a[i]=a[i+1];
a[i+1]=temp;
}
}
}
public static void main(String[] args) {
int [] a1 = {11,5,14,10,2};
bubblesort(a1);
//a.bubblesort();
//a.selectionsort();
// a.insertionsort(); } }
冒泡排序是可以被多个 类 和代码使用的东西,所以最好将它作为一个 Utility Method,它主要写成静态的并使用泛型。
静态/非静态:
static = 处于 class 级别并由 class 的所有实例共享的东西。例如 - site_hit_count
是您希望在 class 级别维护的属性。无论创建了多少个实例,都应该看到最新的和当前的值。
应用程序级缓存(例如所有可用产品的目录信息)也是静态的好例子。
非静态 = 任何 class 级别属性,每个实例都会有所不同。例如 - 在一个名为 Person
的 class 中 - name/age/address 等是实例级属性但 不是静态的 因为每个人都有自己的值以上属性。
我建议你读完这个语言基础教程(这会清除上面的很多问题)- https://docs.oracle.com/javase/tutorial/java/nutsandbolts/index.html