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;
		}
	}

}

新米、问题があるかどうか分からないで、みんなに指摘してもらって、ほほほ~~