JavaStudy02 数据类型转换、运算符、方法入门

来源:Day02 数据类型转换、运算符、方法入门

目录:JavaStudy02 数据类型转换、运算符、方法入门

  • Day02 数据类型转换、运算符、方法入门
    • 今日内容
    • 教学目标
    • 学习自测
      • 第一章 数据类型转换
        • 1.1 自动转换
        • 1.2强制转换
        • 1.3 ASCII编码表
      • 第二章 运算符
        • 2.1 算数运算符
        • 2.2赋值运算符
        • 2.3比较运算符
        • 2.4逻辑运算符
        • 2.5三元运算符
      • 第三章 方法入门
        • 3.1概述
        • 3.2方法的定义
        • 3.3方法的调用
        • 3.4调用联系
        • 3.5注意事项
      • 第四章 JShell脚本工具
      • 第五章 扩展知识点
        • 5.1 +=符号的发展
        • 5.2常量和变量的运算

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
    JavaStudy02 数据类型转换、运算符、方法入门_第1张图片

第五章 扩展知识点

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则编译失败。

你可能感兴趣的:(Java)