Day02 数据类型转换、运算符、方法入门
Day02 数据类型转换、运算符、方法入门
今日内容
- 数据类型转换
- 算数运算符
- 比较运算符
- 逻辑运算符
- 三元运算符
- 简单方法定义和调用
教学目标
- 1.理解数据类型的强制转换
- 2.理解数据类型的自动转换
- 3.了解ASCII编码表
- 4.理解int类型和char类型的运算原理
- 5.理解运算符++ --的运算方式
- 6.理解**+符号**在字符串中的作用
- 7.理解比较运算符
- 8.理解逻辑运算符
- 9.掌握三元运算符的格式和计算结果
- 10.了解方法的概念
- 11.掌握无返回值无参数方法的定义格式
- 12.了解方法定义的注意事项
学习自测
得分率92%:Day02 数据类型转换、运算符、方法入门
第一章 数据类型转换
参与计算的数据的数据类型必须一致,不一致会发生转换。
1.1 自动转换
Java自动将取值范围小的类型自动提升成取值范围大的类型。
规则:byte、short、char→int→long→float→double
1.2强制转换
我们手动将取值范围大的类型强制降成取值范围小的类型。
转换格式:数据类型 变量名=(数据类型)被转数据值
注意:1.浮点→整数,损失精度;2.int→short,数据可能丢失
1.3 ASCII编码表
American Standard Code for Information Interchange): 美国信息交换标准代码。让计算机识别人类文字,文字对应十进制数。
0~9 =48~57
A~Z=65~90
a~z=97~122
public static void main(String[] args){ char x='A'; int y=1; //字符类型和int类型计算 System.out.println(x+y); //a对应65,结果为66 }
第二章 运算符
2.1 算数运算符
6类7型:+、-、*、/、%、++、–,算术运算符得到的都是整数。
自增自减运算符:++i(变量前++)、i++(变量后++)
单独运算→++i和i++一样,变量+1
混合运算:
a=1;b=++a→a=2,b=2
a=1;b=a++→a=2,b=1
public class AutoIandDOperator{ public static void main(string[] args){ int a=1; /*int b=++a; System.out.println(a);//2 System.out.println(b);//2 */ int b=a++; System.out.println(a);//2 System.out.println(b);//1 } }
+遇到字符串表连接
“a”+“b"→"ab”
“5+5=”+5+5 →5+5=55
2.2赋值运算符
将符号右边的值赋给左边变量。6型:=、+=、-=、*=、/=、%=。
i+=5→i=i+5
2.3比较运算符
两个数据间进行比较,输出为布尔值true/false。6型:=、>、<、>=、<=、!=。
2.4逻辑运算符
连接两个布尔类型结果,输出为布尔值true/false。3型:&&短路与、||短路或、!取反
2.5三元运算符
格式:数据类型 变量名=(布尔类型表达式?结果1:结果2)
布尔表达式结果为true,三元运算整体为结果1赋给变量;否则为结果2。
public class TernaryOperator { public static void main (string[] args){ int i=(1>2?2;3); System.out.println(i);//3 } }
第三章 方法入门
3.1概述
方法就是把代码单独定义在一个大括号内,形成单独的功能,需要这个功能的时候,就可以调用,解决代码冗余现象。
3.2方法的定义
格式:
修饰符 返回值类型 方法名(参数列表){ 代码... return; }
- 修饰符:目前固定写法:public static
- 返回值类型:目前固定写法:void
- 方法名:小驼峰,用来调用方法
- 参数列表:目前无参数
- return:方法结束。因为返回值是void,方法大括号内return可以不写。
例如:
public static void methodName(){ System.out.println("这是一个方法"); }
【注意事项】
1.方法定义顺序无所谓
2.方法与方法之间不能嵌套包含
3.方法定义好后不会执行,如果想执行,一定要调用
3.3方法的调用
调用定义好的方法才可以运行
public class HelloWorld { public static void main(String[] args) { //调用myHobby方法 myHobby(); } //定义方法被main调用才可运行 public static void myHobby() { System.out.println("eat"); } }
3.4调用联系
//三元运算方法 public class HelloWorld{ public static void main(String[] args){ ternaryOperator(); } public static void ternaryOperator(){ int i=(1==2?7:9); System.out.println(i); } }
运行结果
3.5注意事项
方法定义:
1.必须定义在一类中、方法外
2.方法不能定义在另一个方法里
public class Demo{ public static void main(String[] args){ } //方法正确写法:类中mian方法外 public static void apple(){ System.out.pritln("苹果"); } } public class Demo{ public static void main(String[] args){ //方法错误写法:mian方法或其他方法内 public static void apple(){ System.out.pritln("苹果"); } } }
第四章 JShell脚本工具
是JDK9以来新特性
- When:只适合片段代码的测试,不愿写类和main方法,也不愿编译和运行时
- How:
第五章 扩展知识点
5.1 +=符号的发展
下面的程序有问题吗?
public class Demo{ public static void main(String[] args){ short i=1; i+=1; System.out.println("i"); } }
i+=1→i=(short)(i+1)
因为+=是一个运算符,只运算一次带强制转换;
若i+=1换成逻辑上的i=i+1,则运算两次,i+1为int赋值给short i则报错。
5.2常量和变量的运算
下面的程序有问题吗?
public class Demo{ public static void main(String[] args){ byte b1=1; byte b2=2; byte b3=1+2; byte b4=b1+b2; System.out.println(b3); System.out.println(b4); } }
b3可以输出,b4不可。
因为
b3=1+2,1和2为常量,javac编译器自动计算出结果3未超过byte取值范围;
b4=b1+b2,b1和b2是变量,javac编译器不确定计算机结果是否超出范围,因此会将结果默认为int,此时赋值范围大于byte则编译失败。
- 点赞
- 收藏
- 分享
- 文章举报
- day02 【数据类型转换、运算符、方法入门】
- javaSE基础笔记_Day02_数据类型转换、运算符及方法入门
- day02 【数据类型转换、运算符、方法入门】
- day02【数据类型转换、运算符、方法入门】
- 第二章【数据类型转换、运算符、方法入门】
- JAVA入门02——数据类型转换、运算符、方法入门
- Java基础第二天(数据类型转换、运算符、方法入门)
- JAVA基础知识点汇总【入门程序、常量、变量、数据类型转换、运算符、方法入门、流程控制语句、IDEA、方法、数组、类与对象、封装、构造方法】
- JAVA每日学习(补录 OneNote笔记)Day2---数据类型转换、运算符、方法入门、JDK9新特性
- Java之数据类型转换,运算符,方法入门
- 数据类型的转换,运算符和方法入门
- Java_Basic_Day02-类型转换+运算符+方法
- 17.2015.08.04第十八节课 C#2 (数值类型及调用、引用类型及调用、装拆箱、常量、变量、数据类型转换、算术运算符、赋值运算符、关系运算符、逻辑运算符、字符串的常用方法)
- JAVA菜鸟入门篇 - 数据类型转换、运算符(四)
- Python (3)python中的数据类型转换,运算和运算符,数据类型检测方法
- java第二天学习笔记【数据类型转换、运算符、方法】
- A15-Python基础之数据类型公共操作[运算符-公共方法-类型转换]
- 基本数据类型和包装类、String类的转换&toString方法&instanceof运算符
- socket通讯中需要用到的一些数据类型转换的方法 .
- C++中的数据类型转换方法总结