这是我的第一个Java 冒泡法例子,分两种:纯数字冒泡法 和字符串中的数字冒泡法
public class String_Maopao {
public static void main(String[] args){
//测试如何将 int -> String
//int i2s_origin = 128;
//String i2s = String.valueOf(i2s_origin);
//System.out.println(i2s);
//测试如何将 String -> int
//String my_buf = new String("27");
//int n = Integer.parseInt(my_buf);
//System.out.println(n);
//测试如何将 char -> String
//char[] cc = {'a','b','2','$','c',','};
//String c2s = String.valueOf(cc);
//System.out.print(c2s.indexOf(','));
//1。纯数字冒泡法
int[] a={2,7,4,88,71,2005};
maopao(a,a.length);
//2。字符串中的数字冒泡法
int i,j,t=0;
String test = new String("34,123,-22,64,26");
//System.out.println(test.length()); test的长度为16
//System.out.println(test.charAt(15)); test第15号字符为6,没有第16号字符
//测试substring(int,int)参数:第一个为起始位,第二个为结束位(不包括该位)!
//System.out.println(test.substring(14,16));
//疑点:这种方法一点不灵活,能否自定义一种类的构造方法呢?
int num = getCompareNumber(test);//num为字符串中需要比较的数字的个数
String[] isub = new String[num];
j = 0;
int n_start = 0;
for(i=0;i<test.length();i++)
{
if( i == test.length()-1 )
{
isub[j] = test.substring(n_start,i+1);
System.out.println( "字符串的数为:" + Integer.parseInt(isub[j]) );
j++;
}
else
{
if( test.charAt(i) == ',' )
{
isub[j] = test.substring(n_start,i);
System.out.println("字符串的数为:" + Integer.parseInt(isub[j]) );
n_start = i+1;
j++;
}//if
}//else
}
t = 0;
int m = j;
//疑点:这种方法一点不灵活,能否自定义一种类的构造方法呢?
num = getCompareNumber(test);
int[] _isub = new int[num];
for(i=0;i<m;i++)
_isub[i] = getint(isub,i);
maopao(_isub,m);
}//main
public static void maopao(int[] _a,int max)
{
int _j,_i,_t=0;
for (_j=0;_j<max-1;_j++)
for (_i=0;_i<max-1-_j;_i++)
{
if (_a[_i]<_a[_i+1])
{_t=_a[_i];_a[_i]=_a[_i+1];_a[_i+1]=_t;}
}
for (_i=0;_i<max;_i++)
System.out.println(_a[_i]);
}//maopao
public static int getint(String[] ss,int ii)
{
return Integer.parseInt(ss[ii]);
}
public static int getCompareNumber(String _ss)
{
int i,isub_n = 0;
for(i=0;i<_ss.length();i++)
{
if( _ss.charAt(i) == ',' )
isub_n ++;
}
return isub_n+1;
}
//public static extract
}//public class String_Maopao
class Myarray {
int _n;
int[] my_array;
public int[] Myarray(int[] _array){
for(_n=0;_n<_array.length;_n++)
my_array[_n] = _array[_n];
return my_array;
}
public int length(){
return my_array.length;
}
}//class Myarray