Java入门第二天

1.标识符:需要自定义名称都叫标识符.eg:类名,变量名,方法名

1.1:标识符只能由字母,数字,_,$组成.
1.2:标识符只能以字母,_,$开头.
1.3:标识符可以包含数字,但是不能以数字开头.
1.4:标识符除了_,$以外,不能包含其他任何特殊字符.
1.5:标识符不能用java中关键字.
1.6:标识符按义取名.
		帕斯卡命名法:标识符可以由一到多个单词组成,每个单词首字母大写,其他的写.类名采用帕斯卡命法.eg:StudentName
		驼峰式命名法:标识符可以由一到多个单词组成,第一个单词首字母小写,其他单词首字母大写,其他小写.一般情况下,变量名和方法名采用驼峰式命名法.eg:studentName

2.关键字:被Java赋予特殊含义的单词.标识符不能用java中关键字.

3.变量:在内存中开辟一块空间存值.

3.1:变量三要素:变量名(自定义),变量类型,变量值.
3.2:变量必须先声明赋值,才能使用.
3.3:=:赋值号,将等于号右边值赋给左边.
3.4:变量声明和赋值的语法:
	3.4.1:先声明变量,再给变量赋值
		声明变量的语法:  数据类型  变量名;
		给变量赋值的语法: 变量名=变量值;
		注意:声明多个数据类型相同变量, 数据类型 变量名1,变量名2;
	eg://声明变量
	String name;
	//给变量赋值
	name="葬";

	3.4.2:声明变量的同时赋值: 数据类型  变量名=变量值;
		eg://声明变量的同时赋值
		int age=18;
		float height=1.88f;
		double weight=100.5;
		char sex='男';
		boolean maritalStatu=true; 
3.5:变量分类
	3.5.1:按数据类型分:
			基本数据类型的变量:
				只要变量的数据类型是byte,short,int,long,
							float,double,char,boolean
			引用数据类型的变量:变量的数据类型是数组,类,接口等
	3.5.2:按声明位置分:
		局部变量:在方法中声明的变量叫局部变量,局部变量在声明
				它的大括号中有用.
		成员变量:在类中,方法外面声明的变量叫成员变量.
		注意:局部不赋值,没有值,就不可以直接用;成员变量不赋值,
		系统会给它分配默认值.

3.6:常量:在内存中开辟一块空间存固定值.常量一生中只能赋一次值.
		常量声明语法:final 数据类型 常量名=值;(常量名全大写)
		eg://声明常量的同时赋值
			final double PI=3.14;
		   //先声明常量再给常量赋值
			final double NUM;
			NUM=3.15;

4.java中常用数据类型

4.1:基本数据类型
	整数:byte,short,int(默认),long
	小数:float,double(默认)
	单个字符:char     注意:char类型的值要加单引号.
	存true/false:boolean
4.2:引用数据类型
	存1个到多个字符:String  注意:字符串类型的值要加双引号.
eg:public static void main(String[] args){
	//声明变量
	String name;
	//给变量赋值
	name="葬";

	//声明变量的同时赋值
	int age=18;
	float height=1.88f;
	double weight=100.5;
	char sex='男';
	boolean maritalStatu=true; 
	
	//输出变量
	System.out.println(name);
	System.out.println("年龄为:"+age);//+起连接作用
	System.out.println("身高:"+height+",体重:"+weight+",性别:"+sex);
	System.out.println("婚否:"+maritalStatu);
}

5.数据类型转换

5.1:自动类型转换: 语法: 大数据类型 变量名=小数据类型的变量;
	兼容:类型要能相同或相近.
	5.1.1:两种数据类型要兼容.
	5.1.2:小类型转换为大类型.
	eg://声明变量同时赋值
	int num1=11;
	//声明变量赋值,自动类型转换
	double num2=num1;
	//自动类型转换
	float num3=num1;
	float num4=22;
	
5.2:强制类型转换: 语法:小数据类型 变量名=(小数据类型)大数据类型的变量;注意:强制类型转换有风险.
	5.2.1:两种数据类型要兼容.
	5.2.2:大类型转换为小类型.
	eg://声明变量同时赋值
		double num5=3.14;
	
		//强制类型转换
		int num6=(int)num5;

5.3:char与int之间相互转换:因为ansi码表,char类型字符都有对应int数字
	5.3.1:char转换为int,发生自动类型转换
		eg://声明变量同时赋值
			char c1='a';
		  //自动类型转换:小类型转换为大类型,两种类型有ansi码表对应
	         int num8=c1;//97

	5.3.2:int转换为char,用强制类型转换
		eg://声明变量同时赋值
			int num9=100;
			//强制类型转换:大类型转换为小类型,两种类型有ansi码表对应
			char c2=(char)num9;
5.4:算术式子中有一个为大类型,整个式子结果提升为大类型.
		eg:int a=10;
		    double result=a+9.8;

5.5:如果强制转换的变量值超过目标类型取值范围,在取值范围内转圈圈
	如果取值范围包含0:结果=值-max+min-1  
	如果取值范围不不包含0:  结果=值-max+min
	byte a=(byte)200;//-56

6.运算符:

6.1:算术运算符:+,-,*,/,%,++,--
	6.1.1:-,*与数学中使用是一样的.
	6.1.2:+:如果+左右两边是数字,+起算术运算,求和.
		  +:如果+左右两边有一边是字符串,+起连接作用
	6.1.3:/:作除法运算.注意:在Java中,整数=整数/整数
		eg://+作算术运算作用
		System.out.println(1+1);//2
		//两个+起连接作用
		System.out.println("1"+1+1);//111
		//第一个+起算术作用,第二个+起连接作用
		System.out.println(1+1+"1");//21
		//在Java中,整数=整数/整数
		int num1=10/2;//5
		int num2=10/3;//3
		//在算术式中,有一个数为大类型,结果就提升为大类型
		double num3=10/3.0;//3.33
	6.1.4:%(求余运算/取模运算符):求两个数的余数.
		eg:int num4=10%3;//1
	
		//给你一个随机四位整数,求这个四位数的各位数字之和,
		//eg:int num=1234; sum=1+2+3+4;
		int num5=4567;
		int gewei=num5%10;//个位数
		int shiwei=num5/10%10;//十位数
		int baiwei=num5/100%10;//百位数
		int qianwei=num5/1000;//千位数
		int sum=gewei+shiwei+baiwei+qianwei;
	6.1.5:++:在自身基础上加1.--在自身基础上减1.
		int num=8;
 		++num:num先自身加1,再参加运算
  		num++:num先执行运算,再自身加1
  		--num:num先自身减1,再参加运算
 		num--:num先执行运算,再自身减1
eg:int a=8;
	int result1=(a++)+(++a)+(--a)+(a--);
	//分析:result1=8+(++a)+(--a)+(a--);  a=9
	//result1=8+10+(--a)+(a--);   a=10
	//result1=8+10+9+(a--);  a=9
	//result1=8+10+9+9;  a=8
	
	System.out.println("result1="+result1+",a="+a);//36,8	

6.2:关系运算符:>,<,>=,<=,!=,==

6.2.1:>,<,>=,<=,!=与数学中用法一致.
6.2.2:==:在java中表比较.	
	eg:double luoheight=1.8;
	double myheight=1.6;
	boolean result1=luoheight==myheight;
	
	int a=8;
	int b=a;
	int c=b=a;

6.3:逻辑运算符:且(&,&&),或(|,||),非(!)

6.3.1:非(!):非真即假,非假即真.
6.3.2:且(&,&&):且左右两边的式子全真,结果为真;
			   有一边为假,结果为假.
		&(普通且):&两边的式子都会判断执行.
		&&(短路且):&&左边式子为假,右边式子不会判断执行;
				  &&左边式子为真,右边要判断执行
6.3.3:或(|,||):或左右两边的式子有一个为真,结果为真;
			   两边式子全为假,结果为假.
		|(普通或):|两边的式子都会判断执行.
		||(短路或):||左边式子为真,右边式子不会判断执行;
		||左边式子为假,右边要判断执行.
      注意:一般情况下,用短路且和短路或.
	  eg:int a1=8;
	boolean result1=++a1<8&a1-->=8;
	boolean result2=++a1<8&&a1-->=8;
	boolean result3=++a1>8|a1-->=8;
	boolean result4=++a1>8||a1-->=8;
6.3.4:^(抑或):^左右两边值是boolean类型.^左右两边相同为false,
			 不同为true
	  eg://^左右两边相同为false,不同为true
			boolean result5=true^false;

6.4:赋值运算符:=,+=,-=,*=,/=

6.4.1:=:将等于号右边值赋给左边.
6.4.2:+=,-=,*=,/=:将赋值号左边的值加上/减去/乘以/除 
		右边的数据得到的结果赋给左边.
		eg:byte b1=1;
		   b1+=1; //b1=(byte)b1+(byte)1

7.n进制:逢n进1

解释:2^1  等价于2的一次方
	 2E1  等价于2乘以10的一次方//E是10的代表 E1是10的一次方
	 2E-1  等价于2乘以10的-1次方
7.1:十进制转为n进制:将十进制数用短除法,除到商为0,再将余从下向上写就是结果.
7.2:n进制数转换为十进制:将n进制的数从右边到左边: 
		右边第一个数*n^0+右边第二个数*n^1+右边第三个数*n^2...

十进制   二进制(ob)    八进制(0)     十六进制(0x)
 1			0b1			01			0x1
 2			0b10		02			0x2
 9			0b1001      011			0x9
17			0b10001		021			0x11
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值