Java小白的学习之路——day03
目录
一、类型转换
1.转换规则以及强转隐患
二、运算符
1.算术运算符
2.赋值运算符
3.关系运算符
4.关系运算符
5.三目运算符
三、类型提升与控制台录入
1.类型提升
2.控制台录入
四、IF分支
1.IF单分支
2.IF双分支
3.IF多分支
4.IF的嵌套
五、switch分支
六、练习与思考
一、类型转换
1.转换规则以及强转隐患
低到高:byte-short-int-long-float-double,默认转
高到低:double-float-long-int-short-byte,强转
示例:
public class TypeChange{public static void main(String[] args){byte a = 6;short b =a;int c = b;long d = c;float e = d;double f = e;//由低到高是默认转System.out.println(d);System.out.println(f);long dd = (long)f;//由高到低是强转,注意这里的格式右边赋予的值要有“(数据类型)”short bb = (short)c;//与要转的目标类型一致System.out.println(dd);System.out.println(bb);}
}
强转隐患
(1)由高到低数据过大就会截断(注意:这里与day02里各种数据类型的范围有关系)
(2)小数转整数会取整
(3)字符与数据互转,数据完整(char的取值范围为65535)
(4)boolean只有true与false,boolean类型不能互转
示例:
public class TypeChange1{public static void main(String[] args){byte a = (byte)496;//超出了byte的范围,产生截断System.out.println(a);int b = (int)2.8;//小数转整数,取整System.out.println(b);char c = 97;int d = (int)c;System.out.println(d);char f = 97;//字符所赋予的值可以转换为整数int e =f;System.out.println(e);}
}
二、运算符
1.算术运算符
(1)+、-、*、/、%、++、--
(2)i++:先输出i,后i+1 i--:先输出i,后i-1 ++i:先使得赋值的i+1后,再输出i --i:先使得赋值的i-1后,再输出i
示例:
public class Suanshu{public static void main(String[] args){int a = 5+1;System.out.println(a);//6System.out.println(a/2);//3System.out.println(a*2);//12System.out.println(++a);//7System.out.println(a--);//7System.out.println(--a);//5//特别注意,这里是个易错点}
}
2.赋值运算符
(1)基本赋值:=
(2)复合赋值:+=、-=、*=、/=、%=
示例:
public class Fuzhi{public static void main(String[] args){int a = 6;System.out.println(a);//6a -=3;//a=a-3System.out.println(a);//3a %=3;//a=a/3的余数System.out.println(a);//0}
}
3.关系运算符
符号:>、>=、<、<=、==、!=
结果:结果为true或者false
示例:
public class Guanxi{public static void main(String[] args){int a = 6;System.out.println(6>3);System.out.println(6>=3);System.out.println(6<3);System.out.println(6<=3);System.out.println(6!=3);}
}
4.关系运算符
符号:&&、||、!、&、|
&&:两边都为true,则为true;第一位为false,则不会执行第二位
||:一边为true,则为true;第一位为true,则不会执行第二位
!:取反,结果为true,输出为false
&:第一位为false,仍然执行第二位
|:第一位为true,仍然会执行第二位
示例:
public class Guanxi2{public static void main(String[] args){boolean a=true;System.out.println(true&&(a=false));//falseSystem.out.println(false&(a=false));//falseSystem.out.println(a);System.out.println(true||false);//trueSystem.out.println(true|(a=false));//trueSystem.out.println(a);//false,注意这里的结果与上一行a=false的关系}
}
5.三目运算符
概念:(关系表达式)?操作数1:操作数2
关系表达式成立就是操作数1,否则为操作数2
示例:
public class Sanmu{public static void main(String[] args){int d = 6;int e = 7;int max = (d<e)?e:d;int min = (e<d)?e:d;System.out.println("最大值:"+max);System.out.println("最小值:"+min);}
}
三、类型提升与控制台录入
1.类型提升
注意事项:
(1)结果为最高的类型
(2)任意类型与字符串拼接都市字符串
2.控制台录入
概念:可以从DOS中输入内容,在程序中接收,是面向对象的操作,要记住它的步骤(这一部分要牢记手动输入内容)
(1)导包
import java.util.Scanner;
(2)实例化控制台对象
Scanner sc = new Scanner(System,in);
System.out.println("请输入内容")
string a = sc.nextString();//int a = sc.nextInt();//double a = sc.nextDouble();//char a = sc.next().charAt()//注意最后char的部分
(3)调用方法获取值
System.out.println(a);
四、IF分支
1.IF单分支
示例:
import java.util.Scanner;
public class If{public static void main(String[] args){System.out.print("请输入百分制成绩:");//从控制台手动输入数字Scanner sc = new Scanner(System.in);int score = sc.nextInt();if(score>=60){System.out.println("成绩合格");}//如果输入的条件符号if()里的则执行输出,如果不符合条件则不执行}
}
2.IF双分支
示例:
import java.util.Scanner;
public class If{public static void main(String[] args){System.out.print("请输入百分制成绩:");//从控制台手动输入数字Scanner sc = new Scanner(System.in);int score = sc.nextInt();if(score>=60){System.out.println("成绩合格");}else{System.out.println("成绩不合格");}}
}
3.IF多分支
示例:
import java.util.Scanner;
public class If{public static void main(String[] args){System.out.print("请输入百分制成绩:");Scanner sc = new Scanner(System.in);int score = sc.nextInt();if(score>=90&&score<=100){System.out.println("优秀");}else if(score>=80&&score<=90){System.out.println("良好");}else if(score>=70&&score<=80){System.out.println("一般");}else if(score>=60&&score<=70){System.out.println("及格");}else if(score<=60){System.out.println("不及格");}}
}
4.IF的嵌套
if语句中又包含if
注意事项:先执行外层的if语句,在执行内层的if
示例:
import java.util.Scanner;
public class CharType {public static void main(String[] args){System.out.print("请输入百分制成绩:");Scanner sc = new Scanner(System.in);int score = sc.nextInt();if(0<=score&&score<=100) {if(score>=90&&score<=100){System.out.println("优秀");}else if(score>=80&&score<=90){System.out.println("良好");}else if(score>=70&&score<=80){System.out.println("一般");}else if(score>=60&&score<=70){System.out.println("及格");}else {System.out.println("不及格");}/*注意:这里在最后一个else{}结尾要有一个括号表示内层的if循环语句结束,往往最后一个条 件可不用条件说明,剩下的就是*/}else {//注意:内层循环结束后,要有一个外层循环的else{}结束外层的if语句System.out.println("请输入正确的数字"); }}
}
五、switch分支
示例:
import java.util.Scanner;
public class Switch{public static void main(String[] args){System.out.println("请输入江南四大才子姓名:");Scanner sc = new Scanner(System.in);String name = sc.next();switch(name){case "唐伯虎"://值:byte、short、int、char、StringSystem.out.println("点秋香");break;case "祝枝山"://跳出switchSystem.out.println("画家");break;case "文征明":System.out.println("书法");break;case "徐征卿":System.out.println("散文家");break;default:/*注意:类似if分支里的else,如果前面的都不满足,则执行default里面的内容切记if多、双分支以及switch一定要加else与break跳出循环*/System.out.println("你的输入有误~");}}
}
六、练习与思考
输入会员积分与购物金额,根据积分的不同享受不同的折扣,并输出结账金额
import java.util.Scanner;
public class Homework4{public static void main(String[] args){System.out.println("请输入会员积分:");System.out.println("请输入购物金额:");Scanner sc = new Scanner(System.in);//这里的new后面没有.是空格double jifen = sc.nextDouble();double jie = sc.nextDouble();if(jifen<2000){System.out.println("结账金额:"+jie*0.9);}else if(jifen<4000){System.out.println("结账金额:"+jie*0.8);}else if(jifen<8000){System.out.println("结账金额"+jie*0.7);}else if(jifen>8000){System.out.println("结账金额:"+jie*0.6);}}
}
Java小白的学习之路——day03相关推荐
- Java基础到Java进阶——Java小白的历练之路------从0到1,开卷!
Java小白的历练之路------从0到1 title: Java Essay date: 2022-09-07 08:58:32 tags: Java notes 写在前面: 免责声明:本笔记来源自 ...
- 小白的学习之路--IDEA安装及使用
小白的学习之路--IDEA安装及使用 IDEA概述和安装 IDEA中的HelloWorld IDEA启动的基本配置 IDEA中创建HelloWorld ①创建一个空项目 ②创建一个新模块(idea_t ...
- QA小白的学习之路!!!!
QA小白的学习之路! 本人是一名应届毕业生程序猿,面试时投的岗位是测试,结果呢在实习时候干了会开发,后来发现自己真的不适合码代码,和主管交流后,现在调到QA来啦,于是我就开始了我的漫漫QA学习之路. ...
- Java小白入门——学习感受随笔
Java小白入门--学习感受随笔 浅谈为何想学Java? 这篇博客是为了大多数和我一样的入门小白或者即将入门的萌新们写的,其实在刚接触编程的时,仅仅是凭着<微微一笑很倾城>的肖奈的喜爱,便 ...
- 菜鸟入门:Java程序员学习之路
1. Java语言基础 谈到Java语言基础学习的书籍,大家肯定会推荐Bruce Eckel的<Thinking in Java>.它是一本写的相当深刻的技术书籍,Java语言基础部分基 ...
- 一个程序员的Java和C++学习之路(整理)
转载:http://blog.csdn.net/ajian005/article/details/8003655 Java学习之路 一直有这么个想法,列一下我个人认为在学习和使用Java过程中可以推荐 ...
- 【转】一个程序员的Java和C++学习之路(整理)
经典编程书籍大全: http://blog.jobbole.com/106093/ https://github.com/jobbole/awesome-programming-books Jav ...
- 一个程序员的Java和C++学习之路
转载自:http://blog.csdn.net/ajian005/article/details/8003655 经典编程书籍大全: http://blog.jobbole.com/106093/ ...
- java webwork_[Java教程]Webwork 学习之路(一)Webwork与 Struct 的前世今生_星空网
Webwork 学习之路(一)Webwork与 Struct 的前世今生 2015-12-04 0 Struts 1是全世界第一个发布的MVC框架,它由Craig McClanahan在2001年发布 ...
最新文章
- Keepalived的VRRPD配置
- 升降压斩波电路matlab,升降压直流斩波电路及matlab仿真.doc
- 前端学习(2860):简单秒杀系统学习之前端优化
- centos提示找不到netstat 和 ifconfig命令的问题
- 如何实现微服务架构下的分布式事务?
- sharepoint搜索pdf文档
- 国产GPGPU如何赶超国外?这3条路最有希望
- java 存储过程简单例子
- HDU4506 小明系列故事——师兄帮帮忙【水题】
- gdb官方说明文档中文版
- PJzhang:python快速搭建局域网文件共享服务器
- 7.24实习培训日志-Docker-Compose
- 机械设计基础课程设计详细步骤(说明书)
- java jsp 文件上传_JSP实现快速上传文件的方法
- hsqldb mysql_安装HSQLDB
- RabbitMQ与spring的集成,,基础。
- 一场分销裂变活动,不止是发发朋友圈这么简单
- 摘抄(SAP所有模块用户出口(User Exits) )
- 千锋教育网络安全课程笔记
- 保研历程(经验分享、保研流程介绍)
热门文章
- iOS tableView刷新分区会闪屏
- SyetemVerilog Function coverage练习
- 网络编程 三次握手、四次挥手
- insmod ko failed analysis
- SpringBoot 使用JDBC
- 如何设计一个好的 Windows 8 应用?
- Acer宏碁台式电脑如何bios设置u盘启动?
- python炒股教程_Python股市数据分析教程 学会它,或可以实现半“智能”炒股
- python开放源代码的版本控制系统_开源点评:源代码版本控制系统介绍
- 交换机的原理以及基础配置命令(eNSP)