📄 nihao.java
字号:
package bao;
/*
* 嶌惉擔: 2005/07/12
*
* 偙偺惗惉偝傟偨僐儊儞僩偺憓擖偝傟傞僥儞僾儗乕僩傪曄峏偡傞偨傔
* 僂傿儞僪僂 > 愝掕 > Java > 僐乕僪惗惉 > 僐乕僪偲僐儊儞僩
*/
/**
* @author luyj
*
* 偙偺惗惉偝傟偨僐儊儞僩偺憓擖偝傟傞僥儞僾儗乕僩傪曄峏偡傞偨傔
* 僂傿儞僪僂 > 愝掕 > Java > 僐乕僪惗惉 > 僐乕僪偲僐儊儞僩
*/
///////////////////////////////////////
//import java.io.PrintStream;
import java.util.*;
import java.util.List;
///////////////////////////////////
public class Nihao {
public Nihao()
{
}
public static int initValue()
{
synchronized(random)
{
return random.nextInt();
}
}
public static boolean isMatchExclusiveKey(ArrayList primaryKeyIn[], ArrayList exclusiveKeyIn, ArrayList primaryKeyDB[], ArrayList exclusiveKeyDB)
{
boolean flag = false;
if(primaryKeyIn != null && primaryKeyIn.length > 0 && primaryKeyDB != null && primaryKeyDB.length > 0 && primaryKeyIn.length == primaryKeyDB.length && exclusiveKeyIn.size() > 0 && exclusiveKeyIn.size() == exclusiveKeyDB.size())
{
sortEx(primaryKeyIn, exclusiveKeyIn);
sortEx(primaryKeyDB, exclusiveKeyDB);
flag = true;
for(int i = 0; flag && i < exclusiveKeyIn.size(); i++){
for(int j = 0; j < primaryKeyIn.length; j++){
if(primaryKeyIn[j].get(i).equals(primaryKeyDB[j].get(i)))
continue;
flag = false;
break;
}
if(!exclusiveKeyIn.get(i).equals(exclusiveKeyDB.get(i)))
flag = false;
}
}
return flag;
}
private static void sortEx(ArrayList primaryKey[], ArrayList exclusiveKey)
{
//System.out.println("exclusiveKey-----------"+exclusiveKey);
for(int i = primaryKey.length - 1; i >= 0; i--){
List list[] = new List[primaryKey.length];
//System.out.println("list[0]------------"+list[0]);
//System.out.println("list[1]------------"+list[1]);
//primaryKey[i].clear();
//System.out.println("primaryKey.length---------------------"+primaryKey.length);
int k = 0;
for(int j = 0; j < primaryKey.length; j++){
//System.out.println("primaryKey[j]-----------------"+j+"-------------"+primaryKey[j]);
if(i != j){
//System.out.println(list[k++]);
list[k++] = primaryKey[j];
//System.out.println("primaryKey[j]-----------------"+j+"-------------"+primaryKey[j]);
}
}
//list[primaryKey.length - 1].clear();
list[primaryKey.length - 1] = exclusiveKey;
//System.out.println("list.length2-----------"+list.length);//===2
sort(primaryKey[i], list);
//System.out.println("i--------------"+i);
//list[0].clear();
//list[1].clear();
//primaryKey[i].clear();
}
}
private static void sort(List key, List value[])
{
System.out.println("************************ start ****************************");
System.out.println("key-------------"+key);
System.out.println("value0---------"+value[0]);
System.out.println("value1---------"+value[1]);
Object keyArray[] = key.toArray();
//System.out.println("**************************** key.toArray()-----------------"+keyArray.length);
int sorted[] = new int[keyArray.length];
for(int i = 0; i < keyArray.length; i++){
sorted[i] = i;
//System.out.println("sorted["+i+"]----------"+sorted[i]);
}
for(int i = keyArray.length - 1; i >= 0; i--){
System.out.println("-------拞暘椶--"+i+"-----------");
for(int j = 0; j < i; j++){
//System.out.println("keyArrayV["+j+"]-------------"+keyArray[j].toString());
//System.out.println("keyArrayV++["+(j+1)+"]***************"+keyArray[j + 1].toString());
System.out.println("-------拞暘椶--"+i+"----彫暘椶--"+j+"----");
if(keyArray[j].toString().compareTo(keyArray[j + 1].toString()) > 0){
System.out.println("keyArray["+j+"]-------------"+keyArray[j].toString());
System.out.println("keyArray++["+(j+1)+"]*******************"+keyArray[j + 1].toString());
Object work = keyArray[j];
keyArray[j] = keyArray[j + 1];
keyArray[j + 1] = work;
int work2 = sorted[j];
sorted[j] = sorted[j + 1];
sorted[j + 1] = work2;
}else if(keyArray[j].toString().compareTo(keyArray[j + 1].toString()) == 0){
System.out.println("------------- hehe -------------");
}
}
}
Object valueArray[] = new Object[key.size()];
for(int i = 0; i < key.size(); i++){
Object valueObj[] = new Object[value.length];
for(int j = 0; j < value.length; j++)
valueObj[j] = value[j].get(i);
valueArray[i] = ((Object) (valueObj));
System.out.println("valueArray["+i+"]=========="+valueArray[i]);
}
for(int i = 0; i < key.size(); i++){
key.set(i, keyArray[i]);
Object valueObj[] = (Object[])valueArray[sorted[i]];
for(int j = 0; j < value.length; j++)
value[j].set(i, valueObj[j]);
}
}
private static Random random = new Random();
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -