`

Java_String_Sort

阅读更多

import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collections;
import java.util.Comparator;

public class StringComparator implements Comparator<String>
{
	public static void main(String[] args)
	{
		ArrayList<String> array = new ArrayList<String>();
		array.add("3");
		array.add("1");
		array.add("2");
		Collections.sort(array, new StringComparator(StringComparator.DESC));
		for (String str : array)
		{
			System.out.println(str);
		}
		
		System.out.println();
		
		String all[] = { "2", "3", "1" };
		Arrays.sort(all, new StringComparator(StringComparator.ASC));
		for (String str : all)
		{
			System.out.println(str);
		}
	}

	public final static int ASC = 1;
	public final static int DESC = -1;

	private int NOA = 1;
	private int NOB = -1;

	public StringComparator()
	{
	}

	public StringComparator(int order)
	{
		if (StringComparator.DESC == order)
		{
			NOA = -1;
			NOB = 1;
		}
	}

	public int compare(String o1, String o2)
	{
		if (o1.compareTo(o2) > 0)
		{
			return NOA;
		} else if (o1.compareTo(o2) < 0)
		{
			return NOB;
		} else
		{
			return 0;
		}
	}
}
分享到:
评论

相关推荐

    Note_scalad.tar.gz

    Java_Bubble_Sort Java_ClassLoader Java_Copy_On_Write Java_Exception Java_ExecutorService Java_IO Java_JVM_Monitor Java_Jstat Java_Lambda Java_Memory Java_Node Java_Photo_Base64AndZip Java_Request_Get...

    java的String用法类型总结

    ### Java的String用法类型总结 #### 一、概述 在Java编程语言中,`String` 类是最常用的数据类型之一,用于表示不可变的字符序列。由于字符串在实际开发中的重要性和高频使用特性,深入理解并掌握其用法至关重要。...

    新建文本文档_java_

    4. **排序**:遍历Map,转换为List&lt;Map.Entry&lt;String, Integer&gt;&gt;,然后使用`Collections.sort()`和自定义比较器,按照值(出现次数)降序排序。 5. **输出结果**:遍历排序后的列表,打印文件名及其出现次数。 在...

    Java中的经典算法之选择排序(SelectionSort).zip_java_java编程

    public static void main(String[] args) { int[] array = {5, 2, 8, 1, 9}; System.out.println("Original array:"); printArray(array); selectionSort(array); System.out.println("\nSorted array:"); ...

    Java_1.8_API文档,中文版本

    如`Arrays.sort(names, String::compareToIgnoreCase)`。 5. **Optional类**:为了解决空指针异常,Java 8引入了`Optional`类,它提供了一种更安全的方式来表示可为空的对象。`Optional&lt;String&gt; optionalName = ...

    java String类常用方法练习小结

    public static void stringSort(String[] arr) { // 采用冒泡排序 // ... } // ... } ``` ### 2. 子串计数 在**字符串练习二**中,我们学习了如何计算一个子串在字符串中出现的次数。`indexOf`方法用于查找...

    JAVA_API_1.7中文.chm

    10. **集合框架的改进**:`Collections.sort()`方法现在支持自定义比较器的并发排序,`ArrayList`和`LinkedList`的构造函数也有所优化。 这些只是JDK7 API中的一部分重要改动,实际文档中包含的远不止这些。通过...

    java_sushu.rar_sushu

    public static void main(String[] args) { int maxNum = 100; // 要求解的范围 List&lt;Integer&gt; primes = new ArrayList(); for (int i = 2; i ; i++) { if (isPrime(i)) primes.add(i); } Collections.sort...

    java_API文档

    例如,`java.lang`是基础包,包含了所有Java程序默认导入的类,如`String`、`Object`和`System`。`java.util`包提供了许多实用工具类,如集合框架(Collections Framework)、日期和时间处理(Date and Time)以及...

    工具类_java工具类_java_

    字符串处理是编程中最常见的任务之一,Java的 `String` 类提供了许多方法,但有时我们需要更高级的功能。工具类可能包含对字符串拼接、分割、查找、替换、格式化等操作的优化,比如避免创建不必要的中间对象,提高...

    java_note笔记

    3. **字符串编码、译码**:Java中的`String`类提供了许多方法处理字符编码和解码,如`getBytes()`用于获取字符串的字节数组,`new String(byte[], charset)`用于指定字符集创建字符串。 4. **JLabel换行**:在Swing...

    WindNote_java_windnote_

    Java的`Files`类和`Stream` API可以用来高效地遍历目录和文件,`String`类的`contains()`或`matches()`方法用于查找关键词。 9. **菜单**:菜单系统是GUI应用的标准部分,Java的`JMenuBar`和`JMenuItem`类可以帮助...

    mongodb_整合java_dao,以及用mongodb做附近人,或者是根据经纬多获取附近商家

    sort(new Sort(Sort.Direction.ASC, "$distance")) )); List&lt;User&gt; users = new ArrayList(); for (Document doc : iterable) { User user = User.fromJson(doc.toJson()); users.add(user); } return ...

    Java_8_API_CN.zip

    这简化了代码,如`Collections.sort(names, String::compareToIgnoreCase);` 5. **日期与时间API**: Java 8中引入了全新的java.time包,替换了过时的`java.util.Date`和`java.util.Calendar`。新API包括`...

    java_Map-sort.rar_Java编程_Java_

    在Java编程领域,Map接口是Java集合框架的重要组成部分,它提供了键值对(key-value pairs)的存储方式。HashMap作为Map的一个实现,以其高效的查找性能和灵活的使用方式深受开发者喜爱。本篇将深入探讨Java中如何对...

    JAVA_比较器讲解

    String name; int age; // 构造函数,getters和setters省略 } ``` - 我们可以创建一个`AgeComparator`类实现`Comparator&lt;Person&gt;`接口: ```java class AgeComparator implements Comparator&lt;Person&gt; { @...

    java_10个任意数排序代码

    除了手动实现排序算法外,Java还提供了内置的排序方法,如`Arrays.sort()`,这是一种更高效且易于使用的排序方法。 **示例代码**: ```java import java.util.Arrays; public class Sort { public static void ...

    java List 排序 Collections.sort

    总结起来,`Collections.sort()`是Java中对List进行排序的标准工具,它支持自然排序和自定义排序。了解其工作原理和优化技巧,可以帮助我们在编程实践中更高效地处理数据。通过阅读和理解`Collections.sort()`的源码...

    个人笔记--Java_API

    - `sort(List&lt;T&gt; list)`:对集合进行排序。 - `shuffle(List&lt;T&gt; list)`:打乱集合中的元素顺序。 - `reverse(List&lt;T&gt; list)`:反转集合中的元素顺序。 #### 二、泛型 **2.1 什么是泛型** 泛型是一种在编译时...

    29-API-集合框架-泛型-使用_java_

    例如,`Collections.sort()`方法接受`List&lt;? extends Comparable&lt;? super T&gt;&gt;`作为参数,这样可以对任意实现了Comparable接口的列表进行排序。 6. **类型推断** 自Java 7开始,编译器可以自动推断泛型类型,称为...

Global site tag (gtag.js) - Google Analytics