/*
需求1 : 统计一个类创建对象的个数。
需求2: 自己实现一个Arrays工具类。
toString();
sort();
*/
//需求1:
class Count{
private static int n;
//每new一个对象就会执行一次构造函数
public Count(){
n++;
}
public static int getNum(){
return n;//返回n
}
}
class Demo8 {
public static void main(String[] args)
{
Count c1 = new Count();
Count c2 = new Count();
Count c3 = new Count();
Count c4 = new Count();
Count c5 = new Count();
Count c6 = new Count();
System.out.println("调用对象的次数为:"+Count.getNum());
}
}
//方法二
//人类
class Person{
int id;
String name;
static int count = 0; //定义一个计数器 非静态成员变量。
//构造代码块
{
count++;
}
public Person(){
}
//构造函数
public Person(int id,String name){
this.id = id;
this.name = name;
System.out.println("构造函数调用了....");
}
}
class Demo2
{
public static void main(String[] args)
{
Person p1 = new Person(110,"狗娃1");
Person p2 = new Person(110,"狗娃2");
Person p3 = new Person(110,"狗娃3");
System.out.println("创建对象的个数:"+Person.count);
}
}
/*
需求2: 自己实现一个Arrays工具类。
toString(); 返回一个使用数组元素拼装好的字符串。
sort();
*/
//我的数组工具类
class MyArrays{
// [1,2,4]
public static String toString(int[] arr){
String result = "";
for(int i = 0 ; i< arr.length ; i++){
if(i==0){
result += "["+arr[i]+",";
}else if(i==(arr.length-1)){
result += arr[i]+"]";
}else{
result +=arr[i]+",";
}
}
return result;
}
//排序
public static void sort(int[] arr){
for (int i = 0 ; i< arr.length-1 ;i++ ){
for(int j = 0 ; j<arr.length-1-i ; j++){
if(arr[j]>arr[j+1]){
int temp = arr[j];
arr[j] = arr[j+1];
arr[j+1] = temp;
}
}
}
}
}
class Demo3
{
public static void main(String[] args)
{
int[] arr = {12,11,19,14};
MyArrays.sort(arr);
String info = MyArrays.toString(arr);
System.out.println("数组的元素:"+ info);
}
}