public class Parking { public static void main(String[] args) { Cost c = new Cost(); c.time; System.out.print(c.time); c.Money(); System.out.println(c.Money()); } } class Cost{ double time; public int Money(){ int t = (int)Math.ceil(time); if(t <= 3){ return 5; }else{ int coin = 5 + (t - 3) * 1; if(coin > 20){ return 20; }else{ return coin; } } } }完善代码
时间: 2023-06-07 19:07:31 浏览: 52
你想让我完善什么部分的代码呢?这段代码是关于停车费用计算的,但目前还有一些问题,比如在主函数main中只是调用了Cost类的方法,但没有为time赋值,导致程序无法正确运行。如果你想让我完善的是这个部分的话,你可以按照如下代码进行赋值并输出停车费用。
public class Parking {
public static void main(String[] args) {
Cost c = new Cost();
c.time = 4.5; // 假设车停了4.5小时
System.out.print("停车费用为:");
System.out.println(c.Money() + "元"); // 输出停车费用
}
}
class Cost{
double time;
public int Money(){
int t = (int)Math.ceil(time);
if(t <= 3){
return 5;
}else{
int coin = 5 + (t - 3) * 1;
if(coin > 20){
return 20;
}else{
return coin;
}
}
}
}
相关问题
public class LanQiao { public static void main(String[] args) { char c='a'; System.out.println(c+1) ; } }
这段程序会输出98,而不是b。
在Java中,char类型被视为整数类型,可以进行加、减等运算。在本例中,c是字符'a',它的Unicode编码是97,加上数字1之后得到98,因此程序输出98。
如果想输出字符'b',可以将结果强制转换为char类型,代码如下:
```java
public class LanQiao {
public static void main(String[] args) {
char c = 'a';
System.out.println((char)(c + 1));
}
}
```
这段程序输出b,正确地将98转换为了字符'b'。
class Test{ public static void main(String[] args){ { int i =10; } System.out.println(i); }
这段代码会报错,因为变量 `i` 的作用域仅限于内部的代码块中,无法在外部代码块中访问。在 `System.out.println(i)` 的位置,编译器会提示找不到符号 `i` 的错误。如果你想在外部访问变量 `i`,需要将其声明在外部代码块中。以下是修改后的代码:
```java
class Test {
public static void main(String[] args) {
int i;
{
i = 10;
}
System.out.println(i);
}
}
```
这样修改后,代码就可以成功输出变量 `i` 的值 10。