您的位置:首页 > 其它

数组排序——基本数据类型排序(选择排序、智能排序)与字符串数组排序

2019-03-05 09:04 211 查看

(1)基本数据类型排序(选择排序)
package com_tz_qzy;

public class compare1 {

public static void main(String[] args) {
/*
* 	案例:int类型:25,34,45,8,40
* 	需求从小到达
*/
//	定义一个数组
int [] arr= {25,34,45,8,40};
//外层循环控制循环的次数,共4次
for(int i=0;i<arr.length-1;i++) {
//	内层循环控制每次循环比较的次数,分别是4,3,2,1
for(int j=i+1;j<arr.length-1-i;j++) {
if(arr[i]>arr[j]) {
int temp=arr[i];
arr[i]=arr[j];
arr[j]=temp;
}
}
}
//	经过比较数组已经默认排序
for(int i=0;i<arr.length-1;i++) {
System.out.print(arr[i]+"\t");
}
}
}

(2)基本数据类型(Arrays.sort)

package com_tz_qzy;

import java.util.Arrays;

public class compare2 {
public static void main(String [] args) {
/*
* 	案例:基本数据类型数组排序--智能排序
* 	int类型:25,34,45,8,40
* 	需求从小到达
*/
int [] arr= {25,34,45,8,40};
//	直接调用工具进行排序
Arrays.sort(arr);
// 遍历数组,打印
for(int i=0;i<arr.length-1;i++) {
System.out.print(arr[i]+"\t");
}
}
}

(3)字符串排序

package com_tz_qzy;

public class compare3 {

public static void main(String [] args) {
/*
* 	案例:字符串数组排序
* 		字符串:"abc"、"ace"、"abcd"、"wfs"
* 	需求:从小到大排序
*/
//定义一个数组,静态初始化
String	[] str= {"abc","ace","abcd","wfs"};
printArray(str);
//	对于一般的非static成员变量或方法,需要有一个对象的实例才能调用,所以要先成对象的实例,他们才会分配到内存空间。
//	而对于static的对象或方法,在程序载入时便已经分配了内存空间,他只和特定的类相关联,无需实例化。
}
//	数组比较的方法
public static void printArray(String [] str) {
for(int i=0;i<str.length-1;i++) {
for(int j=i+1;j<str.length-1-i;j++){
if(str[i].compareTo(str[j])>0) {
String temp=str[i];
str[i]=str[j];
str[j]=temp;
}
}
}
for(int i = 0;i<str.length;i++) {
System.out.print(str[i]+"\t");
}
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐