Java2.1
2015-12-29 06:32
816 查看
自动售票机
public class Main {
public static void main(String[] args) {
// TODO Auto-generated method stub
// 初始化
Scanner in = new Scanner(System.in);
// 读入投币金额
System.out.println("请投币:");
int amount = in.nextInt();
// 打印车票
System.out.println("票价10元");
// 计算并打印找零
System.out.println("找零:"+(amount-10));
}
}
// 计算并打印找零System.out.println("找零:"+(amount-10));}}
运算结果
请投币:5
true
*******************
Java城际铁路专线
票价10元
*******************
找零:-5
关系运算:
== 相等
!= 不等于
优先级:
所有的关系运算符的优先级比算术运算的低,但是比赋值运算的高
判断是否相等的==和!=的优先级比其他的低,而连续的关系运算是从左到右进行
6>5>4 先计算6>5,true,然后判断true是否大于4,错
整数和浮点数,与ture和false是无法做比较的
ture和false二者也无法做比较
判断两个浮点数是否相等:
public class Main {
public static void main(String[] args) {
// TODO Auto-generated method stub
double a = 1.0;
double b = 0.1+0.1+0.1+0.1+0.1+0.1+0.1+0.1+0.1+0.1;
System.out.println(a==b);
System.out.println("a="+a+";b="+b);
}
}
运算结果:
false
a=1.0;b=0.9999999999999999
所以判断两个浮点数是否相等不能用==,那如何来判断呢?
math.abs(a-b)<1e-6;
public class Main {
public static void main(String[] args) {
// TODO Auto-generated method stub
double a = 1.0;
double b = 0.1+0.1+0.1+0.1+0.1+0.1+0.1+0.1+0.1+0.1;
System.out.println(a==b);
System.out.println("a="+a+";b="+b);
<span style="color:#ff0000;">System.out.println(Math.abs(a-b)<1e-6);</span>
}
}
加入判断语句if,如果投入的金额>=10,才计算:
public class Main {
public static void main(String[] args) {
// TODO Auto-generated method stub
// 初始化
Scanner in = new Scanner(System.in);
// 读入投币金额
System.out.print("请投币:");
int amount = in.nextInt();
<span style="color:#ff0000;">if(amount >= 10){</span>
// 打印车票
System.out.println("************");
System.out.println("Java城际铁路专线");
System.out.println(" 票价10元 ");
// 找零
System.out.println("找零:"+(amount - 10));
<span style="color:#ff0000;">}</span>
}
}
输入两个数,判断大小:
public class Main {
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner in = new Scanner(System.in);
int x = in.nextInt();
int y = in.nextInt();
int max = y;
if(x>y)
max = x;
System.out.println(max);
}
}
或者:
public class Main {
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner in = new Scanner(System.in);
int x = in.nextInt();
int y = in.nextInt();
int max;
if(x>y)
max = x;
else
max = y;
System.out.println(max);
}
}
if-else
输入三个数,比大小:
public class Main {
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner in = new Scanner(System.in);
int x = in.nextInt();
int y = in.nextInt();
int z = in.nextInt();
int max = z;
int b = x;
if(z<b){
if(x<y)
b = y;
max =b;
}
System.out.println(max);
}
}
tips:在if和else后面总是加{},即使只有一条语句的时候
判断语句容易出现的错误总结:
1:忘记大括号,解决办法:永远在if和else后面总是加{},即使只有一条语句的时候。不要怕麻烦,将来的你会感谢现在的自己。
2、if语句后面加分号
3、错误使用==和=
代码风格:
在if和else之后必须加上大括号形成语句块;
大括号内的语句缩进一个tab的位置
public class Main {
public static void main(String[] args) {
// TODO Auto-generated method stub
// 初始化
Scanner in = new Scanner(System.in);
// 读入投币金额
System.out.println("请投币:");
int amount = in.nextInt();
// 打印车票
System.out.println("票价10元");
// 计算并打印找零
System.out.println("找零:"+(amount-10));
}
}
public class Main { public static void main(String[] args) { // TODO Auto-generated method stub // 初始化 Scanner in = new Scanner(System.in); // 读入投币金额 System.out.print("请投币:"); int amount = in.nextInt(); System.out.println(amount>=5); // 打印车票 System.out.println("*******************"); System.out.println("Java城际铁路专线"); System.out.println(" 票价10元 ");
<pre name="code" class="java">public class Main { public static void main(String[] args) { // TODO Auto-generated method stub double a = 1.0; double b = 0.1+0.1+0.1+0.1+0.1+0.1+0.1+0.1+0.1+0.1; System.out.println(a==b); System.out.println("a="+a+";b="+b); } }
// 计算并打印找零System.out.println("找零:"+(amount-10));}}
运算结果
请投币:5
true
*******************
Java城际铁路专线
票价10元
*******************
找零:-5
关系运算:
== 相等
!= 不等于
优先级:
所有的关系运算符的优先级比算术运算的低,但是比赋值运算的高
判断是否相等的==和!=的优先级比其他的低,而连续的关系运算是从左到右进行
6>5>4 先计算6>5,true,然后判断true是否大于4,错
整数和浮点数,与ture和false是无法做比较的
ture和false二者也无法做比较
判断两个浮点数是否相等:
public class Main {
public static void main(String[] args) {
// TODO Auto-generated method stub
double a = 1.0;
double b = 0.1+0.1+0.1+0.1+0.1+0.1+0.1+0.1+0.1+0.1;
System.out.println(a==b);
System.out.println("a="+a+";b="+b);
}
}
运算结果:
false
a=1.0;b=0.9999999999999999
所以判断两个浮点数是否相等不能用==,那如何来判断呢?
math.abs(a-b)<1e-6;
public class Main {
public static void main(String[] args) {
// TODO Auto-generated method stub
double a = 1.0;
double b = 0.1+0.1+0.1+0.1+0.1+0.1+0.1+0.1+0.1+0.1;
System.out.println(a==b);
System.out.println("a="+a+";b="+b);
<span style="color:#ff0000;">System.out.println(Math.abs(a-b)<1e-6);</span>
}
}
加入判断语句if,如果投入的金额>=10,才计算:
public class Main {
public static void main(String[] args) {
// TODO Auto-generated method stub
// 初始化
Scanner in = new Scanner(System.in);
// 读入投币金额
System.out.print("请投币:");
int amount = in.nextInt();
<span style="color:#ff0000;">if(amount >= 10){</span>
// 打印车票
System.out.println("************");
System.out.println("Java城际铁路专线");
System.out.println(" 票价10元 ");
// 找零
System.out.println("找零:"+(amount - 10));
<span style="color:#ff0000;">}</span>
}
}
public static void main(String[] args) { // TODO Auto-generated method stub // 定义常量 final int minor = 35; // 读入年龄 System.out.print("请输入你的年龄:"); Scanner in = new Scanner(System.in); int age = in.nextInt(); System.out.println("您的 年龄是:"+age); // 判断 if(age<minor){ System.out.println("啊,年轻是美好的"); } System.out.println("年龄决定了你的精神世界,好好珍惜吧"); } }
输入两个数,判断大小:
public class Main {
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner in = new Scanner(System.in);
int x = in.nextInt();
int y = in.nextInt();
int max = y;
if(x>y)
max = x;
System.out.println(max);
}
}
或者:
public class Main {
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner in = new Scanner(System.in);
int x = in.nextInt();
int y = in.nextInt();
int max;
if(x>y)
max = x;
else
max = y;
System.out.println(max);
}
}
if-else
输入三个数,比大小:
public class Main {
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner in = new Scanner(System.in);
int x = in.nextInt();
int y = in.nextInt();
int z = in.nextInt();
int max = z;
int b = x;
if(z<b){
if(x<y)
b = y;
max =b;
}
System.out.println(max);
}
}
tips:在if和else后面总是加{},即使只有一条语句的时候
判断语句容易出现的错误总结:
1:忘记大括号,解决办法:永远在if和else后面总是加{},即使只有一条语句的时候。不要怕麻烦,将来的你会感谢现在的自己。
2、if语句后面加分号
3、错误使用==和=
代码风格:
在if和else之后必须加上大括号形成语句块;
大括号内的语句缩进一个tab的位置
相关文章推荐
- 多线程1.50的特性
- spring-in-action-mvc-mybatis
- 关于使用cmd编译java文件出现乱码现象解决方法
- Java 多线程:多线程产生的原因
- hadoop 之eclipse插件定做
- eclipse--解决Android模拟器端口被占用问题的办法
- Java并发同步器--CountDownLatch
- java的流和编码
- 基于javaConfig的springDataJpa+dubbo+springMvc搭建(一)
- java 子类重载父类
- java equals
- java开发中如何使用JVisualVM进行性能分析
- spring boot自动配置幕后
- Spring教程
- lightweight java profiler与java flame graph初了解
- java数据类型
- java关键字
- Java 数组基础
- java按日期加1
- java比较日期