信手拈来 妙手偶得 » 2008年 » 6月
【转载】在windowsXP系统中卸载oracle9i
简易代码之家 发表于 2008-06-30 23:12:03
转载地址:
http://www.blogjava.net/jakin/archive/2008/06/27/211130.html
1.在"开始"->"设置"->"控制面板"->"管理工具"->"服务"中停掉所有关于oracle服务的选项;
2.在"开始"-> "程序" -> "oracle" -> "configuration and migration tools" -> "Net Configuration Assistant"中删除现有监听器。或者,在OEM Console->工具->服务管理->Oracle Net Manager中删除现有监听器和服务;
3.在开始->程序->Oracle Installation Products选择"Universal Installer"卸载Oracle;
4.修改注册表中的下述文件夹:"开始"->"运行"->键入"regedit"命令打开注册表
i. HKEY_LOCAL_MACHINE/software
ii. HKEY_LOCAL_MACHINE/SYSTEM/ControlSet001/Services
HKEY_LOCAL_MACHINE/SYSTEM/ControlSet001/Services/Eventlog/Application
iii.HKEY_LOCAL_MACHINE/SYSTEM/ControlSet002/Services
HKEY_LOCAL_MACHINE/SYSTEM/ControlSet002/Services/Eventlog/Application
iv. HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Services
HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Services/Eventlog/Application
删除这些文件夹中Oracle相关子文件,后两处可能本来就没有;
5.删除在C:\Program Files目录下的oracle目录(假定C为系统盘);
6.删除在Oracle的工作目录(安装Oracle时指定的安装目录,例如D:\oracle),如果无法删除则重启计算机后再删除;
7.重新启动计算机;
8.如果第2步无法正常工作,则"开始"-> "程序"中的Oracle菜单会仍出现。此时可:
跳过第2步,直接进行3-7步操作。其中最后在" C:\Documents and Settings\All Users\「开始」菜单\程序"中手动删除与Oracle有关的两项:
Oracle - OraHome92
Oracle Installation Products
或者,直接在"开始"-> "程序"中用鼠标右键单击此两项菜单并删除。
【原创】数目字计数器,可多次添加整形数,累计0-9各个数字出现了多少次
Junglesong 发表于 2008-06-28 16:51:32


/** *//**
* 数目字计数器,可多次添加整形数,累计0-9各个数字出现了多少次
* @author: sitinspring(junglesong@gmail.com)
* @date: 2008-6-26-下午09:45:52
*/
public class NumberCountCaculator
{
// 用于存放0-9位图数组
private int[] numCounts;

/** *//**
* 构造函数,其中初始化变量numCounts
*
*/
public NumberCountCaculator()
{
numCounts=new int[10];
}

/** *//**
* 添加一个整形数,累计0-9各个数字出现了多少次
* @param number
*/
public void add(int number)
{
while(number>9)
{
numCounts[number%10]++;
number/=10;
}
numCounts[number]++;
}

/** *//**
* 打印出现次数信息
*
*/
public void printNumberCount()
{
for(int i=0;i<numCounts.length;i++)
{
if(numCounts[i]!=0)
{
System.out.println("数字"+i+"出现了"+numCounts[i]+"次");
}
}
}

public static void main(String[] args)
{
NumberCountCaculator ncc=new NumberCountCaculator();
ncc.add(1234567890);
ncc.add(13579);
ncc.add(24680);
ncc.add(1);
ncc.add(23);
ncc.add(456);
ncc.add(7890);
ncc.printNumberCount();
}
}输出:
数字0出现了3次
数字1出现了3次
数字2出现了3次
数字3出现了3次
数字4出现了3次
数字5出现了3次
数字6出现了3次
数字7出现了3次
数字8出现了3次
数字9出现了3次【原创】泛型动态数组类
Junglesong 发表于 2008-06-28 16:49:54
package com.sitinspring;
import java.util.Arrays;

/** *//**
* 泛型动态数组类,以数组为数据容器实现动态数组的功能
* @author: sitinspring(junglesong@gmail.com)
* @date: 2008-6-23-下午10:08:09
*/
public class DynamicArray<T extends Object>
{
/** *//** *//** *//**
* 用于存储数据的数组
*/
private T[] arr;

/** *//** *//** *//**
* 初始化大小
*/
private static final int initSize = 10;

/** *//** *//** *//**
* 当前元素个数
*/
private int currItemsCount = 0;

/** *//** *//** *//**
* 构造函数一,固定大小
*/
@SuppressWarnings("unchecked")
public DynamicArray()
{
arr = (T[])new Object[initSize];
}

/** *//** *//** *//**
* 构造函数二,指定大小
*/
@SuppressWarnings("unchecked")
public DynamicArray(int len)
{
arr = (T[])new Object[len];
}

/** *//** *//** *//**
* 取得位置在i的元素
*/
public T get(int i)
{
if (i < currItemsCount)
{
return arr[i];
}
throw new ArrayIndexOutOfBoundsException(i+"超过了数组界限");
}

/** *//** *//** *//**
* 取得数组中已有元素的个数
* @return
*/
public int size()
{
return currItemsCount;
}

/** *//** *//** *//**
* 添加一个元素到数组
* @param number
*/
@SuppressWarnings("unchecked")
public void add(T number)
{
if (currItemsCount >= arr.length)
{
T[] arrNew =(T[]) new Object[arr.length * 2];
for (int i = 0; i < arr.length; i++)
{
arrNew[i] = arr[i];
}
arr = arrNew;
}
arr[currItemsCount] = number;
currItemsCount++;
}

/** *//** *//** *//**
* 删除位置在i的元素
* @param removeIndex
*/
@SuppressWarnings("unchecked")
public void remove(int removeIndex)
{
if (removeIndex < arr.length)
{
if (removeIndex > currItemsCount)
{
T[] arrNew = (T[]) new Object[arr.length - 1];
for (int j = 0; j < arrNew.length; j++)
{
arrNew[j] = arr[j];
}
arr = arrNew;
} else
{
T[] arrNew = (T[]) new Object[arr.length - 1];
for (int j = 0; j < removeIndex; j++)
{
arrNew[j] = arr[j];
}

for (int j = removeIndex + 1; j < arr.length; j++)
{
arrNew[j - 1] = arr[j];
}
currItemsCount--;
arr = arrNew;
}
}
}

/** *//** *//** *//**
* 取得添值部分的数组
* @return
*/
@SuppressWarnings("unchecked")
public T[] getArr()
{
T[] arrNew = (T[])new Object[currItemsCount];

for (int i = 0; i < arrNew.length; i++)
{
arrNew[i] = arr[i];
}
return arrNew;
}

/** *//** *//** *//**
* 取得已排序的数组
* @return
*/
public T[] getSortedArr()
{
T[] arrSorted = getArr();
Arrays.sort(arrSorted);
return arrSorted;
}


/** *//** *//** *//**
* 显示添值部分的数组
*
*/
public void display()
{
System.out.print("现有元素有:");
for (int i = 0; i < currItemsCount; i++)
{
System.out.print(arr[i] + ",");
}
System.out.print("\n");
}

/** *//** *//** *//**
* 显示数组的所有子元素,包括添值和未添值部分
*
*/
public void displayAll()
{
System.out.print("所有元素有:");
for (int i = 0; i < arr.length; i++)
{
System.out.print(arr[i] + ",");
}
System.out.print("\n");
}

/** *//** *//** *//**
* 程序入口
* @param args
*/
public static void main(String[] args)
{
DynamicArray<Integer> dArray = new DynamicArray<Integer>(12);
dArray.add(1);
dArray.add(2);
dArray.add(3);
dArray.add(4);
dArray.add(5);
dArray.display();
dArray.displayAll();
dArray.add(6);
dArray.add(7);
dArray.add(8);
dArray.add(9);
dArray.add(10);
dArray.display();
dArray.displayAll();
dArray.add(11);
dArray.add(12);
dArray.add(13);
dArray.add(14);
dArray.add(15);
dArray.display();
dArray.displayAll();
dArray.remove(3);
dArray.display();
dArray.displayAll();
dArray.remove(0);