package Day5.Assemble_Package.Collection_Package.List_Package.ArrayList.Genericty_menthood;/**
* <h>IdeaNewStart</h>
*
* @author : AChun
* @date : 2021-12-22 11:59
* @since : 1.8
**/
/**
* 类成员变量:首字母小写和驼峰原则:monthSalary,除了第一个单词意外,后面的单词首字母大写
* 局部变量:首字母小写和驼峰原则
* 常量:大写字母和下划线:PI_VALUE
* 类名:首字母大写和驼峰原则:Man,GoodMan
* 方法名:首字母小写和驼峰原则:run(),runRun()
* */
public class GenericDemo {
public static void main(String[] args) {
String[] names={"阿春","阿瓜","阿呆"};
printArray(names);
Integer[] ages={18,22,26};
printArray(ages);
}
public static <T> void printArray(T[] arr){
//所谓泛型方法,比如定义的这个方法,我定义的数据类型是T,但是它代表的是所有的数据类型,
// 相当于一个多态的父类方法,我的子类都可以调用,数据类型不需要强制转换,当然,T也可以写别的,
// A,B,C..高兴写什么就写什么,但是代码规范化的话,泛型方法就用T
if(arr !=null){//如果数组不为空的话
StringBuilder sb=new StringBuilder("[");//使用StringBuilder进行拼接,很好用的
for (int i = 0; i < arr.length; i++) {
//三元运算符
sb.append(arr[i]).append(i==arr.length-1?"":",");
}
sb.append("]");
System.out.println(sb);
}else {//数组空的就返回数组
System.out.println(arr);
}
/*拼接
* StringBuilder 对象名()=new StringBuilder();
* 对象名.append(x);
* 对象名.append(y);
* System.out.println(对象名);
* 结果:xy
*
* 对象名.append(a).append(b);
* System.out.println(对象名);
* 结果:ab
* */
}
}
运行结果: