`
liuyes
  • 浏览: 53600 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

自己实现java的String.compareTo函数

阅读更多
package other;

import org.junit.Test;

public class OtherTest {

	@Test
	public void toCompare(){
		System.out.println(this.compare("中国", "中国"));
		System.out.println("中国".compareTo("中国"));
	}
	/**
	 * 首先判断长度,用长度短的字符串长度做循环比较
	 * 循环中从左到右顺序取一个字符比较
	 * 如果大于,返回当前字符位置(正数),如果小于,返回当前字符位置(取负数),如果相等则比较下一个
	 * @author liuyes
	 * @param str1 比较的第一个字符串
	 * @param str2 比较的第二个字符串
	 * @return 返回比较的结果
	 */
	public int compare(String str1,String str2){
		int i=str1.length();
		int j=str2.length();
		if(i>j){
			for(int n=0;n<j;n++){
				if(str1.charAt(n)>str2.charAt(n)){
					System.out.println("111111");
					return n+1;
				} else if(str1.charAt(n)<str2.charAt(n)) {
					System.out.println("222222");
					return -(n+1);
				} else {
					continue;
				}
			}
			return j+1;
		} else if(i<j) {
			for(int n=0;n<i;n++){
				if(str1.charAt(n)>str2.charAt(n)){
					System.out.println("333333");
					return n+1;
				} else if(str1.charAt(n)<str2.charAt(n)) {
					System.out.println("444444");
					return -(n+1);
				} else {
					continue;
				}
			}
			return i+1;
		} else {
			for(int n=0;n<i;n++){
				if(str1.charAt(n)>str2.charAt(n)){
					System.out.println("555555");
					return n+1;
				} else if(str1.charAt(n)<str2.charAt(n)) {
					System.out.println("666666");
					return -(n+1);
				} else {
					continue;
				}
			}
			System.out.println("777777");
			return 0;
		}
	}

}


新手,不知有无问题,请大家指正,呵呵~~
0
0
分享到:
评论

相关推荐

    字符串string.zip

    2. **字符串创建**:Java中有两种创建字符串的方式,通过字面量`"text"`或通过`new String()`构造函数。值得注意的是,字面量方式创建的字符串会存储在常量池中,而使用构造函数会创建堆内存中的新对象。 3. **字符...

    JAVA string函数总结.docx

    ### JAVA String 类函数总结 #### 一、字符串创建与初始化 在 Java 中,`String` 类是最常用的字符串处理工具之一。它可以用来表示一系列字符,并且提供了丰富的方法来操作这些字符。下面通过示例代码展示了如何...

    java CompareTo使用案例

    在Java编程语言中,`compareTo()`方法是`Comparable`接口的一部分,它允许对象进行相互比较。这个方法主要用于排序,特别是当需要自定义排序规则时。本文将深入探讨`compareTo()`方法的使用,包括其基本原理、语法、...

    Java中常用函数汇总

    这里我们汇总了一些Java中常用的字符串相关函数,这些函数在处理文本数据时非常实用。 首先,`compareTo()`和`compareToIgnoreCase()`是用来比较两个字符串的函数。`compareTo()`根据ASCII值对字符串进行逐字符比较...

    api_String.zip_brain2bi_java

    String对象可以通过多种方式创建,例如使用字面量、构造函数或者通过StringBuffer/StringBuilder。例如: ```java String str = "Hello, World!"; String str2 = new String("Java"); ``` String类的主要方法包括...

    JAVA字符串处理函数列表一览.

    ### JAVA字符串处理函数列表一览 在Java编程语言中,字符串处理是极其常见且重要的操作之一。Java为`String`类提供了丰富的内置方法,使得开发者能够高效地进行字符串操作。本文将详细介绍部分常用的字符串处理函数...

    java String类的实现

    Java中的`String`类是编程中最常用的类之一,它在Java的`java.lang`包中,无需显式导入即可使用。`String`类代表不可变的字符序列,这意味着一旦创建了`String`对象,它的值就不能改变。这个特性使得`String`在处理...

    java常用字符串函数集锦

    concat() 函数用于连接两个字符串,可以使用 "+" 运算符来实现字符串的连接,例如:String s = "Welcome to "; String t = s.concat("AnHui"); // t 将是 "Welcome to AnHui" 3. replace() 函数 replace() 函数...

    JAVA字符串函数一览.txt

    ### JAVA字符串函数详解 在Java编程语言中,字符串处理是一项非常重要的技能,特别是在面试或实际开发过程中。本文将详细介绍《JAVA字符串函数一览》中的关键函数及其用法。 #### 1. `substring()` `substring()`...

    Java的String类的方法介绍

    本篇文章将详细介绍Java String类的一些主要构造函数和常用方法。 一、构造函数 1. `String(byte[] bytes)`: 这个构造函数接受一个字节数组`bytes`,并将其转换为字符串。例如,给定一个包含ASCII值的字节数组,这...

    JAVA常见字符串函数.doc

    JAVA常见字符串函数 JAVA语言中,字符串函数是非常重要的一部分,今天我们将要讨论的一些常见的字符串函数。 1. charAt(int index) 函数:该函数用于返回字符串中指定位置的字符。例如,String str="Hello,World!...

    java.lang包介绍

    3. **String**: 用来表示不可变的字符序列,是Java中非常重要的类,支持多种操作,如拼接、查找、替换等。 4. **Character**: 提供了处理Unicode字符的方法,包括`Character.Subset`和`Character.UnicodeBlock`类,...

    JAVA字符串处理函数列表一览

    ### JAVA字符串处理函数列表一览 在Java编程语言中,字符串处理是极其常见且重要的操作之一。字符串类`String`提供了丰富的内置方法来帮助开发者高效地完成各种字符串操作任务。本文将详细解读`String`类中的一些...

    OnJava8.zip

    Java 8允许在接口中定义私有方法和静态方法,这增强了接口的功能,使得接口可以拥有自己的辅助方法,而不会污染实现类的命名空间。 综上所述,《OnJava8.zip》中的文档将详细解析这些Java 8的关键特性,帮助开发者...

    String manipulation operations in java.zip

    `underscore.string`是一个流行的JavaScript库,它提供了许多实用的字符串函数,现在也有Java版本。在`underscore.string.java-master`中,我们可以找到类似的方法,比如: - `chop(str, n)`: 从字符串开头或结尾...

    java常用char,string函数

    ### Java中的Char与String函数详解 #### 一、概述 在Java编程语言中,`char`类型用于表示单个字符,而`String`类则用于处理字符串数据。这两种类型是进行文本处理时不可或缺的基础工具。本文将详细介绍Java中与`...

    有关Java String常用方法的总结.docx

    ### 有关Java String常用方法的总结 #### 一、String 类概述 `String`类是Java中最基础也是最重要的数据类型之一,在Java中被定义为一个不可变类(immutable class),这意味着一旦一个`String`对象创建之后,其...

    从DELPHI到JAVA转换.pdf

    在 JAVA 中,集合元素必须唯一,并且需要定义 equals 函数和 compareTo 函数。 Key/Value 在 DELPHI 中,Key/Value 是通过 TStringList 来实现的,而在 JAVA 中,则是通过 HashMap、TreeMap 等来实现的。在 JAVA ...

    2-Junit-String.rar

    标题中的“2-Junit-String.rar”显然与Java编程中的单元测试工具有关,特别是Junit框架和字符串处理。Junit是Java编程语言中最广泛使用的单元测试框架,它允许开发者编写可执行的测试用例来验证代码的功能是否按预期...

    492.490.JAVA基础教程_常用类-自定义类实现Comparable自然排序(492).rar

    在描述中提到的"自定义类实现Comparable自然排序",指的是在创建自己的类时,通过实现`Comparable`接口并定义`compareTo`方法来实现自然排序。例如,如果你有一个`Student`类,你可以根据学生的年龄或者成绩来定义...

Global site tag (gtag.js) - Google Analytics