必须答辩才能得分html
import java.util.*; public class MySort1 { public static void main(String [] args) { String [] toSort = {"aaa:10:1:1", "ccc:30:3:4", "bbb:50:4:5", "ddd:20:5:3", "eee:40:2:20"}; System.out.println("Before sort:"); for (String str: toSort) System.out.println(str); Arrays.sort(toSort); System.out.println("After sort:"); for( String str : toSort) System.out.println(str); } }
参数 | 功能说明 |
---|---|
-b | 忽略每行前面开始出的空格字符。 |
-c | 检查文件是否已经按照顺序排序。 |
-d | 排序时,处理英文字母、数字及空格字符外,忽略其余的字符。 |
-f | 排序时,将小写字母视为大写字母。 |
-i | 排序时,除了040至176之间的ASCII字符外,忽略其余的字符。 |
-m | 将几个排序好的文件进行合并。 |
-M | 将前面3个字母依照月份的缩写进行排序。 |
-n | 依照数值的大小排序。 |
-o <输出文件> | 将排序后的结果存入指定的文件。 |
-r | 以相反的顺序来排序。 |
-t <分隔字符> | 指定排序时所用的栏位分隔字符。 |
sort -n -k 2 -t'-' date // -t<分隔字符> 指定排序时所用的栏位分隔字符。 -k 选择以哪一个区间进行排序
将字符串数组tosort用“:”分隔,以第二列数值大小为标准从小到大排列: 建立整型数组a,长度与tosort长度相同 调用split函数将tosort数组以:(冒号)为分隔符分红小字符串 将每个tosort元素的第二例列数值存入数组a中 调用Arrays类的sort函数对a进行排序 输出排序后的结果
/** * @author 20175227 Xueying Zhang * @date 2019/5/19 11:44. */ import java.util.*; public class MySort { public static void main(String [] args) { String [] toSort = { "aaa:10:1:1", "ccc:30:3:4", "bbb:50:4:5", "ddd:20:5:3", "eee:40:2:20"}; System.out.println("Before sort:");//输出排序前字符串数组 for (String str: toSort) System.out.println(str); int [] a=new int[toSort.length]; for(int i=0;i<toSort.length;i++){//对toSort每个元素用split进行划分,并储存进字符串数组list中 String [] list=toSort[i].split(":"); a[i]=Integer.parseInt(list[1]);//将list中第二个元素,即toSort中第二列元素存进a中 } Arrays.sort(a); System.out.println("After sort:"); for (int i = 0; i < a.length; i++)//对a中每一个元素 for (int j = 0; j < toSort.length; j++)//在toSort中每个元素的第二列中比较 if (a[i] == Integer.parseInt((toSort[j].split(":"))[1]))//若是两者相等 System.out.println(toSort[j]);//就输出该项元素 } public static int StringTest1(String str){ int a; String [] list=str.split(":"); a=Integer.parseInt(list[1]);//将list中第二个元素,即toSort中第二列元素存进a中 return a; } public static int[] StringTest2(String[] toSort){ int [] a=new int[toSort.length]; for(int i=0;i<toSort.length;i++){//对toSort每个元素用split进行划分,并储存进字符串数组list中 String [] list=toSort[i].split(":"); a[i]=Integer.parseInt(list[1]);//将list中第二个元素,即toSort中第二列元素存进a中 } Arrays.sort(a); return a; } }
import junit.framework.TestCase; import org.junit.Test; public class MySortTest extends TestCase { String [] toSort = { "aaa:10:1:1", "ccc:30:3:4", "bbb:50:4:5", "ddd:20:5:3", "eee:40:2:20"}; @Test public void testl() { assertEquals(10,MySort.StringTest1("aaa:10:1:1")); } public void test2() { assertEquals(20,MySort.StringTest2(toSort)[1]); } }
MySort.javajava