day03数据类型

总结

  1. 数据类型
  2. 类型转换
  3. 运算符
1.数据类型
赋值方式

(1)整数的赋值方式:

数据类型 变量名 = 字面值;

5种常用的赋值方法:

​ 1.二进制赋值:以"0b" 或"0B"开头后跟二进制值

​ 2.八进制赋值:以0开头后跟八进制值

​ 3.十进制赋值(常用):直接赋值

​ 4.十六进制赋值:以"0x"或"0X"开头后跟十六进值

public class Demo01{
	public static void main(String[] args){
		//十进制赋值:
		int num = 10;
		//二进制赋值
		num = 0B101;
		System.out.println("二进制num的值是:"+num);
		//8进制
		num = 013;
		System.out.println("8进制num的值是:"+num);
		//16进制
		num = 0x2A;
		System.out.println("16进制num的值是:"+num);
    }
}

在这里插入图片描述

​ 5.通常在一串长数字间加入符号_来分割整个整数

public class Demo01{
	public static void main(String[] args){
		int	num = 12_345_678;
		System.out.println("num的值是:"+num);
	
	}
}

在这里插入图片描述
(2)小数的赋值方式

​ 正常赋值:double d=3.14;

​ 科学计数法:

​ 数值E/e 整数:0.0000314=3.14E-5;

逻辑型(布尔型)
符号所占空间范围
boolean1位(实际存储还是一个字节)true/false

注意:boolean类型不参与四则运算

public class Demo03{
	public static void main(String[] args){
		//声明一个boolean类型的变量
		boolean flag = true;
		System.out.println(flag);//看输出结果是否正确
			
	}
}
字符型
符号空间范围
char2字节0~65535

注意事项:1.给char变量类型赋值时要注意是单引号引起的单个字母

​ 2.java中字符串的类型是String,’'表示字符”“表示字符串

​ 3.char类型可以参与四则运算,也可以直接赋值整数

​ 4.Java可以使用中文,因其采用Unicode编码

​ 5.转义字符

2.类型转换

​ java 中所有类型都可以进行类型转换(boolean类型不能进行类型转换)

1.自动转换

​ 主要是小类型转为大类型

	大类型 变量名 = 小类型的值

byte -> short -> int -> long
char 通常直接转为int类型

public class Demo06{
	public static void main(String[] args){
		//声明一个byte类型的变量
		byte b = 12;
		
		// 声明一个int类型的变量存放byte类型的数据
		int num = b;//把变量b中的值赋值给int类型的变量num存放
		System.out.println(num);
		
	}
}

在这里插入图片描述

2.强制转换
	主要是大类型转为小类型

​ 小类型 变量名 = (小类型)大类型的变量

​ 注意:大类型的变量值一旦超过小类型的取值范围会导 致结果有问题

public class Demo06{
	public static void main(String[] args){
		
		int num;
		//声明一个char类型
		char ch = 'a';
		num = ch;
		
		System.out.println(num);
		
		num = 300;
		
		//将int类型的值赋值给byte
		byte result = (byte)num;
		System.out.println(result);
		
	}
}

在这里插入图片描述

3.运算符
1.概念

运算符两边的内容称为操作数

int num = 3+5;

= + 都是运算符

2.算数运算(+、-、*、/、%)

+号:

在JAVA中+号有三种用途:1.加法运算

​ 2.用作连接符

​ 3.正号

public class Demo01{
	public static void main(String[] args){
		/*
		+号的三种用法:
					1.连接符号
					2.加法运算
					3.正号
		*/
		int num=3+5;//= +都是运算符,运算符两边的内容称为操作数
		System.out.println(num);
	}
}

-号:

主要有两种作用:1.减法运算

​ 2.负号

*、/、%(乘 除 取余):

public class Demo02{
	public static void main(String[] args){
		int num=1234;
		int bit=num%10;//4
		System.out.println("个位数是:"+bit);
		
		num=num/10;//123
		bit=num%10;//余数3
		System.out.println("十位数是:"+bit);
		
		num=num/10;//12
		 bit=num%10;//2
		System.out.println("位百数是:"+bit);
		
		 bit=num/10;
		System.out.println("千位数是:"+bit);
	
	}
}

在这里插入图片描述

3.自增自减

自增++:++在前表示先自增再运算

​ ++在后表示先运算再自增

public class Demo03{
	public static void main(String[] agrs){
		//自增++
		int num =8;
		num++;
		System.out.println("自增:"+num);
		
		num=10;
		int result= ++num;
		System.out.println("先自增再运算:"+num);//先自增再运算
		num=10;
		 result= num++;
		System.out.println("先运算再自增:"+num);//先运算再自增
		//自减--
		
		num=10;
		num--;
		System.out.println("自减:"+num);
		
		//混合运算
		int i=5;
		int k=4;
		result =++i+k---i+k+++i--;
		System.out.println("混合运算:"+num);
		}
}

在这里插入图片描述

4.关系运算符(> 、<、 >= 、<=、==、!= )

= : 赋值运算符 自右向左运算
1:关系运算符最后得到的结果是一个boolean类型的变量
2:== !=既可以连接基本数据类型 也可以判定引用类型

public class Demo04{
	public static void main(String[] agrs){
		
		//测试==
		int j=10;
		int k=10;
		System.out.println(j==k);//比较两数是否相等
		
		//声明两字符串型变量
		String str1="aaa";
		String str2="aaa";
		System.out.println("==结果"+(str1==str2));//比较两个变量是否相等
	
	}
}

在这里插入图片描述

5.逻辑运算符

& | ! ^ && ||
1:逻辑运算符左右两边连接的操作数是一个boolean类型的值
2:& 左右两边操作数有一个为false,其结果就是false,如果都为true其结果才为true。
3:| 左右两边操作数有一个为true,其结果就是true,如果都为false其结果才为false。
4:! 取反
5:^ 相同为false 不同为true
6:&& || 称之为短路与和短路或,&&如果第一个操作数为false其结果就是false不会执行第二个操作数。
|| 如果第一个操作数为true,整个结果就为true,不会执行第二个操作数

public class Demo05{
	public static void main(String[] agrs){
		//测试&
		System.out.println("测试&");
		System.out.println(true&true);
		System.out.println(true&false);
		System.out.println(false&true);
		System.out.println(false&false);
		
		//测试|
		System.out.println("测试|");
		System.out.println(true|true);
		System.out.println(true|false);
		System.out.println(false|true);
		System.out.println(false|false);
		
		//测试!
		System.out.println("测试!");
		System.out.println(!true);
		System.out.println(!false);
		
		//测试&&
		System.out.println("测试&&");
		System.out.println(true&&true);
		System.out.println(true&&false);
		System.out.println(false&&true);
		System.out.println(false&&false);
		
		//测试||
		System.out.println("测试||");
		System.out.println(true||true);
		System.out.println(true||false);
		System.out.println(false||true);
		System.out.println(false||false);
	}
}

模拟登录

/*
模拟登录
*/
public class LoginV1{
	public static void main(String[] agrs){
		//声明登录用户名和密码
		int LoginName=123;
		int LoginPwd=234;
		//声明注册用户名和密码
		int Name=123;
		int Pwd=234;
		boolean flag =(LoginName==Name)&&(LoginPwd==Pwd);
		System.out.println(flag);
	}
}

从键盘输入

/*
通过键盘输入模拟登录
*/
import java.util.Scanner;
public class LoginV2{
	public static void main(String[] agrs){
		
		System.out.println("请输入用户名:");//提示用户输入信息
		Scanner input=new Scanner(System.in);
		int LoginName=input.nextInt();//获取键盘输入的值
		System.out.println("请输入密码:");
		int LoginPwd=input.nextInt();//获取键盘输入的值
		//声明注册用户名和密码信息
		int Name=123;
		int Pwd=234;
		boolean flag =(LoginName==Name)&&(LoginPwd==Pwd);
		System.out.println(flag);
	}
}

在这里插入图片描述

6.拓展运算符(+= *= /= %=)
优点:1.简化了代码量
​		   2.能够实现自动强转
 		   3.有效提高了编译速度
7.条件运算符

​ 格式:

表达式1?表达式2:表达式3

​ 先计算表达式1的值(值永远只能是true或false),若式1的值为true,则表达式1的结果是表达式2的值,否则表达式1的结果是表达式2的值。

public class Demo06{    
	public static void main(String[] args){ 
		// 计算两个数的最大值:        
		//声明2个变量存放值        
		int num1 = 10;        
		int num2 = 15;                
		System.out.println(num1>num2);                
		//三目运算符        
		int max = num1>num2?num1:num2;     
		System.out.println("num1和num2中大的值是:"+max);                                 
	} 
}
8.运算符优先级

​ 1:算数 > 关系 > 逻辑 > 三目 >赋值

​ 2: 单目>双目>三目

​ 3:加括号

    blic static void main(String[] args){ 
    		// 计算两个数的最大值:        
    		//声明2个变量存放值        
    		int num1 = 10;        
    		int num2 = 15;                
    		System.out.println(num1>num2);                
    		//三目运算符        
    		int max = num1>num2?num1:num2;     
    		System.out.println("num1和num2中大的值是:"+max);                                 
    	} 
    }

8.运算符优先级

​ 1:算数 > 关系 > 逻辑 > 三目 >赋值

​ 2: 单目>双目>三目

​ 3:加括号

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值