这段代码怎么进行优化?

清晨宸 2013-12-13 11:20:09
要不要用到什么设计模式?

public class list03 {
public static void main(String[] args){
int[] nums=new int[]{1,2,3,4};
printN(nums);
String[] str=new String[]{"str1","str2","str2"};
printS(str);
double[] flo=new double[]{1.1,2.2,3.3,4.4};
printF(flo);
}

private static void printF(double[] nums) {
for(int i=0;i<nums.length;i++){
System.out.print(nums[i]+" ");
}
System.out.println();
}
private static void printS(String[] nums) {
for(int i=0;i<nums.length;i++){
System.out.print(nums[i]+" ");
}
System.out.println();
}
private static void printN(int[] nums) {
for(int i=0;i<nums.length;i++){
System.out.print(nums[i]+" ");
}
System.out.println();
}
}
...全文
211 8 打赏 收藏 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
msj100ff 2013-12-13
  • 打赏
  • 举报
回复
引用 2 楼 c2c9ccc 的回复:
[quote=引用 1 楼 msj100ff 的回复:] 你可以用一个Object数组或者一个Object集合,写一个打印方法打印数组或者集合,就不用写这么多了
这么写的话int数组和double数组怎么去调用?


public class list03 {
	public static void main(String[] args){
		int[] nums=new int[]{1,2,3,4};
		print(nums);//这里
		String[] str=new String[]{"str1","str2","str2"};
		print(str);
		double[] flo=new double[]{1.1,2.2,3.3,4.4};
		print(flo);//这里
	}
	
	private static void print(Object[] nums) {
		for(int i=0;i<nums.length;i++){
			System.out.print(nums[i]+" ");
		}
		System.out.println();
	}
}
[/quote] 哦 我看懂你意思了 用Object数组还写什么int [] 直接写 Object[] 就行了 基础类型自动打包成对象
msj100ff 2013-12-13
  • 打赏
  • 举报
回复
引用 2 楼 c2c9ccc 的回复:
[quote=引用 1 楼 msj100ff 的回复:] 你可以用一个Object数组或者一个Object集合,写一个打印方法打印数组或者集合,就不用写这么多了
这么写的话int数组和double数组怎么去调用?


public class list03 {
	public static void main(String[] args){
		int[] nums=new int[]{1,2,3,4};
		print(nums);//这里
		String[] str=new String[]{"str1","str2","str2"};
		print(str);
		double[] flo=new double[]{1.1,2.2,3.3,4.4};
		print(flo);//这里
	}
	
	private static void print(Object[] nums) {
		for(int i=0;i<nums.length;i++){
			System.out.print(nums[i]+" ");
		}
		System.out.println();
	}
}
[/quote] 什么怎么调用 Object [] objs = {1,"aaaa",1.2,1.2F}; 爱放什么放什么 循环打印就完了
樱花落了 2013-12-13
  • 打赏
  • 举报
回复
呵呵 你们说的我都还没有学到 哎 慢慢一点点学习吧
she383 2013-12-13
  • 打赏
  • 举报
回复
引用 2 楼 c2c9ccc 的回复:
[quote=引用 1 楼 msj100ff 的回复:] 你可以用一个Object数组或者一个Object集合,写一个打印方法打印数组或者集合,就不用写这么多了
这么写的话int数组和double数组怎么去调用?


public class list03 {
	public static void main(String[] args){
		int[] nums=new int[]{1,2,3,4};
		print(nums);//这里
		String[] str=new String[]{"str1","str2","str2"};
		print(str);
		double[] flo=new double[]{1.1,2.2,3.3,4.4};
		print(flo);//这里
	}
	
	private static void print(Object[] nums) {
		for(int i=0;i<nums.length;i++){
			System.out.print(nums[i]+" ");
		}
		System.out.println();
	}
}
[/quote] 不换就不能用Object接收
she383 2013-12-13
  • 打赏
  • 举报
回复
引用 2 楼 c2c9ccc 的回复:
[quote=引用 1 楼 msj100ff 的回复:] 你可以用一个Object数组或者一个Object集合,写一个打印方法打印数组或者集合,就不用写这么多了
这么写的话int数组和double数组怎么去调用?


public class list03 {
	public static void main(String[] args){
		int[] nums=new int[]{1,2,3,4};
		print(nums);//这里
		String[] str=new String[]{"str1","str2","str2"};
		print(str);
		double[] flo=new double[]{1.1,2.2,3.3,4.4};
		print(flo);//这里
	}
	
	private static void print(Object[] nums) {
		for(int i=0;i<nums.length;i++){
			System.out.print(nums[i]+" ");
		}
		System.out.println();
	}
}
[/quote] int 换成Integer,double换成Double
清晨宸 2013-12-13
  • 打赏
  • 举报
回复
引用 2 楼 c2c9ccc 的回复:
最好不要把int 和double 变为 Integer 和 Double
清晨宸 2013-12-13
  • 打赏
  • 举报
回复
引用 1 楼 msj100ff 的回复:
你可以用一个Object数组或者一个Object集合,写一个打印方法打印数组或者集合,就不用写这么多了
这么写的话int数组和double数组怎么去调用?


public class list03 {
	public static void main(String[] args){
		int[] nums=new int[]{1,2,3,4};
		print(nums);//这里
		String[] str=new String[]{"str1","str2","str2"};
		print(str);
		double[] flo=new double[]{1.1,2.2,3.3,4.4};
		print(flo);//这里
	}
	
	private static void print(Object[] nums) {
		for(int i=0;i<nums.length;i++){
			System.out.print(nums[i]+" ");
		}
		System.out.println();
	}
}
msj100ff 2013-12-13
  • 打赏
  • 举报
回复
你可以用一个Object数组或者一个Object集合,写一个打印方法打印数组或者集合,就不用写这么多了

62,620

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧