当前位置:   article > 正文

一道笔试题

一道笔试题

一道笔试题
需要在method方法调用之后,仅打印出a=100,b=200,请写出method方法的代码

public class Test{
	public static void main(String[] args){
		int a=10;
		int b=10;
		method(a,b);//需要在method方法调用之后,仅打印出a=100,b=200,请写出method方法的代码
		System.out.println("a="+a);
		System.out.println("b="+b);
	}
	//代码编写处
}

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11

方法一:用一些“小技巧”

public static void method(int a,int b){
a = a*10;
b = b*10;
System.out.println("a="+a);
System.out.println("b="+b);
System.exit(0);//程序终止
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

运行结果:
方法一

方法二:从打印流下手

public static void method(int a,int b){

		PrintStream ps = new PrintStream(System.out){//重写打印流
			@Override
			public void println(String x){
				if("a=10".equals(x)){  //如果是a=10 改为a=100
					x="a=100";
				}else if("b=10".equals(x)){ //如果是b=10 改为b=200
					x="b=200";
				}
				super.println(x);
			}
		};
		System.setOut(ps); //重新设置
	}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15

运行结果:
方法二

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/天景科技苑/article/detail/940379
推荐阅读
相关标签
  

闽ICP备14008679号