Java第三章总结

系列文章目录

Java第三章总结


文章目录

  • 3.1:Java主类结构
  • 3.2:基本数据类型
  • 3.3:变量与常量
  • 3.4:运算符
  • 3.5:数据类型转换
  • 3.6:代码注释和编码规范


前言

Java语言基础


3.1:Java主类结构

1.包声明:package Number为声明类的包

2.声明局部变量和成员变量:s1为成员变量,s2为局部变量

3.编写主方法:main为主方法。从花括号开始{至花括号结束}public static void是main()的修饰符、静态修饰符,必须声明public static void main(String[] args)一组字符串,字符串为main()的主参数。[文字描述算法在代码中]

public class Hi {  //类名
	 static  String s1="你好";//声明成员变量
	
	public static void main(String[] args) {  //主函数
		
		 String s2="java";//声明局部变量
		 
		System.out.print(s1);//输出s1内容
		System.out.print(s2);//输出s2内容
		
	}
}  //例题3.1

 

3.2:基本数据类型

 

3.2.(1.2) 数据类型:分为整数类型和浮点类型。(byte,short,interesting,long) (float、double)

数据类型
数据类型

内存空间

取值范围默认值
byte8-128~1270
short16-2¹⁵~2¹⁵0
int32-2³²~2³²⁻¹0
long64-2⁶³~2⁶⁴⁻¹0L
float321.4E-45~3.4028235e3580.0F
double644.9E-324~1.7976931348623157E3080.0

public class Thirdone {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
			byte b=1;//定义byte形
			System.out.println(b);//输出换行
			short z=12345;//定义short形
			System.out.println(z);//输出换行
			int i=11254;//定义int形变量
			System.out.println(i);//输出换行
			long l=7946626126L;//定义long形L大写
			System.out.println(l);//输出换行
			float h=9.99F;//定义float单精度浮点型
			System.out.println(h);//输出
			double m=5.66D;//定义double双精度浮点型
			System.out.println(m);//输出

	}

}

浮点类型例题

public class BMIexponent{


	public static void main(String[] args) {
		// TODO Auto-generated method stub
		double height=1.71;//定义double型,height为高度,将数值赋予这个量
		int weight=70;//douuble为局部变量,定义int类型,weight为重量
		double exponent=weight/(height*height);//算法为重量除以升高和重量的乘积
		System.out.println("您的身高为:"+height);//输入身高
		System.out.println("您的体重为:"+weight);//输入体重
		System.out.println("您的BMI指数为:"+exponent);//计算bmi指数
		System.out.println("您的体重属于:");//判断语句
		if(exponent<18.5) {
			System.out.println("体重过轻");//如果exponent小于18.5,输出体重过轻
		}
		if(exponent>=18.5&&exponent<24.9) {  //如果exponent大于等于18.5并且小于24.9,输出正常范围
			System.out.println("正常范围");
		}
		if(exponent>=24.9&&exponent<29.9) {//如果exponent大于等于24.9且小于29.9,输出体重过重
			System.out.println("体重过重");
			
		}
		if(exponent>=29.9){//如果exponent大于等于29.9,输出肥胖
			System.out.println("肥胖");}
	}
}
//例题3.2

 

 

(文字描述算法在代码里)

3.2.3 字符类型:.char型:储存单个字符,占用16位,用单引号表示

 

                           .转义字符:特殊的字符变量,以反斜杠"\"开头

转义字符
转义字符含义转义字符含义
\ddd1~3位八进制数据所表示的字符,如\123\r回车
\uxxxx4位十六进制数据所表示的字符,如\u5002\n换行
\'单引号字符\b退格
\\ 反斜杠字符\f换页
\t垂直制表符,将光标移到下一个制表符的位置

public class Char {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		char c1='\\';//定义char字符类型
		char c2='\u2650';//Unicode编码
		System.out.println(c1);//打印输出c1
		System.out.println(c2);//输出c2
	}

}
        //例题3.4

 

 

                           .布尔类型:只有true和false两个值

public class TrueOrFalse {

	
	
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		boolean b1=true;//定义布尔类型字符b1
		boolean b2=Boolean.FALSE;//定义布尔类型字符b2(注意大写)
		System.out.println(b1);
		System.out.println(b2);//打印输出
		
	}

}

 

 

3.3:变量与常量

 1.标识符:用来标识类名、变量名、方法名、数组名、文件名的有效字符序列

由任意顺序字母(A/a)、下划线(-)、美元符号($)和数字(不能放开头)组成。

.只能包含字母、下划线、美元符号、数字

.不能以数字开头

.要避开关键字(关键字即为代码中彩色的字)这里用任意代码作为示例。

 2.变量:变化的

定义和赋值:类型+变量名 例如:(double+weight)

.局部变量:在方法内部定义,只在该方法内有效

.成员变量:在类里在方法外,在整个类和方法里有效


public class Thirdtwo {
	static int times=3;//成员变量
	public static void main(String[] args) {
		int times=4;//局部变量
		System.out.println("times的值为:"+times);//当局部变量和成员变量名字相同使用就近原则
        
	}


}
//将局部变量删除就会输出成员变量的值或者将成员变量输出

上段代码结果为: 


public class Thirdtwo {
	static int times=3;//成员变量
	public static void main(String[] args) {
		int times=4;//局部变量
		System.out.println("times的值为:);//当局部变量和成员变量名字相同使用就近原则
        System.out.println("Thirdtwo.times")//类+times
	}//如果将类times删掉的话输出就会报错


}
//将局部变量删除就会输出成员变量的值或者将成员变量输出

 上段代码结果为:

 常量:固定的

public class ThirdPart {

	public static void main(String[] args) {
	     final	int number;//定义一个int类型number数字
	     number=1125;
	     System.out.println(number);
		
		
		
		

	}

}

重新赋值,使之报错(错误为红色部分)

 (final是特殊的变量)

在成员变量中定义常量

public class ThirdPart { //创建类
	 static  final double PI =3.14;  //声明变量pi
	public static void main(String[] args) {
	     final	int number;//定义一个int类型number数字  //static为静态
	     number=1125;//赋值1125
	     System.out.println(number);//输出number
	     System.out.println(PI);//输出pi
		
		
		
		

	}

}

3.4:运算符

 3.4.1赋值运算符
以“=”表示,将右边数赋值给左边

public class Eval { //创建类

	public static void main(String[] args) {//主方法
		// TODO Auto-generated method stub
		int a,b,c;//声明int类型变量a,b,c
		a = 15;//将15赋值给a
		c=b = a+4;//把a+4的值赋给b,然后赋给c
		System.out.println("c值为:"+c);//输出c的值
		System.out.println("b值为:"+b);//输出b的值
		
		                 //c=b=a+4;//从右往左看,一般是b=a+4;c=a;
		
	}

}
//例题3.7

3.4. 2算术运算符

Java算数运算符
运算符说明实例结果
+12.45f+1527.45
-4.56-0.164.4
*5L*12.45f62.25
/7/23
%取余12%102

import java.util.Scanner;//例题3.8



public class Eval {//创建类
public static void main(String[] args) {   
		Scanner sc =new Scanner(System.in);//scanner为输入,意思为扫描键盘输入,创建扫描器,获取控制台输入值
		System.out.println("请输入两个数字,用空格隔开(num1 num2):");//输入提示
		double num1=sc.nextDouble();//可以改为int类型,记录第一个数
		double num2=sc.nextDouble();//记录第二个数
		System.out.println("num1+num2的和为:"+(num1+ num2));//计算两数和
		System.out.println("num1-num2的差为:"+(num1-num2));//计算两数差
		System.out.println("num1*num2的积为:"+(num1* num2));//计算两数积
		System.out.println("num1/num2的商为:"+(num1/ num2));//计算两数商
		System.out.println("num%num2的余数为:"+(num1% num2));//计算两数余数
		sc.close();//关闭扫描器
		
		}
}

3.4.3 自增和自减

a++,++a;a--,--a;(运算符在前,先运算后使用;运算符在后,先使用后运算);

3.4.4比较运算符

比较运算符
运算符作用举例操作数据结果
>比较左方是否大于右方‘a’>'b'整形、浮点型、字符型

false

<比较左方是否小于右方156<456整形、浮点型、字符型true

=

比较左方是否等于右方'c'='c'基本数据类型、引用型true
>=比较左方是否大于等于右方479>=426整形、浮点型、字符型true
<=比较左方是否小于等于右方12.45<=45.5整形、浮点型、字符型true
!=比较左方是否不等于右方'y'!='t'基本数据类型、引用型true

public class Compare {//创建类

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		int number1=4;//声明int型变量number1
		int number2=5;//声明int型变量number2
		System.out.println("number1 > number2的返回值为:"+(number1 > number2));//判断1是否大于2
		System.out.println("number1 < number2的返回值为:"+(number1 < number2));//判断1是否小于2
		System.out.println("number1 == number2的返回值为:"+(number1 == number2));//判断1是否等于2
		System.out.println("number1 != number2的返回值为:"+(number1 != number2));//判断1是否等于2
		System.out.println("number1 >= number2的返回值为:"+(number1 >= number2));//判断1是否大于等于2
		System.out.println("number1 <= number2的返回值为:"+(number1 <= number2));//判断1是否小于等于2

	}

}
//例题3.9

3.4.5 逻辑运算符

&&(与):两者都为真,结果才是真;

||(或):只要有一者为真,结果就是真;

!(非):非真即假,非假即真;

false&&.....&&.....:结果一定为false(短路现象)

true||.....||.....:结果一定为true(短路现象)

3.4.6位运算符

二进制之间进行运算使用位运算符

&(与):两者都为1,结果才是1;

|(或):只要有一者为1,结果就是1;

~(取反):0变1,1变0;

^(异或):两者相同即为0,不同为1;

<<(左移):整体往左移一位,空位补0,溢出去掉。

>>(右移):整体往右移一位,正数补0,负数补1,溢出去掉。

>>>(无符号右移):整体往右移,空位补0,溢出去掉。

 3.4.7 三元运算符

例如:A?B:C

A:一定是一个条件语句

B:A为真结果为B

C:A为假结果为C

int a=3;

int b=a>2? a++/a--/++a:8;

a=4;b=3   /  a=2 b=4 /a=4 b=4

转换if else语句:if(a>2){

b=a++/a--/}

else{

b=8}

3.5:数据类型转换

自动类型转换:一定不会丢失数据(即低精度数据类型向高精度数据类型转换    例如:byte型转换为short型,系统会自动进行转换)

强制类型转换:有可能会丢失数据(即高精度数据类型向低精度数据类型转换  例如:short型转换位byte型)

数据类型排列顺序:byte<short<int<long<float<double

3.5.1隐式类型转换

隐式类型转换规则
操作数1的数据类型操作数2的数据类型转换后的数据类型
byte、short、charintint
byte、short、char、intlonglong
byte、short、char、int、longfloatfloat
byte、short、char、int、long、floatdoubledouble

public class Conver {//创建类

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		byte mybyte=127;//定义byte型变量mybyte,并赋值
		int myint=(int)45.232323;   //强制类型转换
		float myfloat=452.12f;//定义float型变量myfloat,并赋值
		char mychar=10;//定义char型变量mychar,并赋值
		double mydouble=45.46546;//定义double型变量mydouble,并赋值
		
		
		System.out.println("byte型与float型数据进行运算结果为:"+(mybyte+ myfloat));//输出结果
		System.out.println("byte型与int型数据进行运算结果为:"+(mybyte* myint));
		System.out.println("byte型与char型数据进行运算结果为:"+(mybyte/ mychar));
		System.out.println("double型与char型数据进行运算结果为:"+(mydouble+ mychar));
		
		
		
		
	}

}  //例题3.11

 

3.6:代码注释和编码规范

3.6.1代码注释

单行注释

//....(注释内容)

多行注释

/*

....

注释内容

*/

文档注释

/** */


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值