为什么下列代码输出后,screen并未正确显示输入值,而是显示mem的输入值?

import java.util.Scanner;

public class InitailTelphone {

public static void main(String[] args) {
// TODO Auto-generated method stub

Scanner input=new Scanner(System.in);
System.out.println("请输入Screen的值");
float Screen=input.nextFloat();

System.out.println("请输入Cpu的值");
float cpu=input.nextFloat();

System.out.println("请输入Mem的值");
float mem=input.nextFloat();

Telphone phone2=new Telphone(Screen,cpu,mem);

phone2.setScreen(Screen);
phone2.setScreen(cpu);
phone2.setScreen(mem);
System.out.println("screen:"+phone2.getScreen());
System.out.println("cpu:"+phone2.getCpu());
System.out.println("mem:"+phone2.getMem());

}

}
----------------------------------------------------------------------------------
请输入Screen的值
10
请输入Cpu的值
20
请输入Mem的值
30

screen:30.0
cpu:20.0
mem:30.0

UYOU
浏览 170回答 1
1回答

catspeake

Telphone phone2=new Telphone(Screen,cpu,mem);phone2.setScreen(Screen);phone2.setScreen(cpu);// 注意还这个 set 。。 你覆盖了 原来的 screen值。phone2.setScreen(mem);System.out.println("screen:"+phone2.getScreen());System.out.println("cpu:"+phone2.getCpu());System.out.println("mem:"+phone2.getMem());}
打开App,查看更多内容
随时随地看视频慕课网APP