java学习第三天

1.基本类型-字符

语法

char 变量 = '字符';
char 变量 = 整数;
  • 一个字母,一个数字,一个符号,一个汉字
  • 在定义字符时,要定义在单引号中
  • 也可以定在该字符在ascii表中的编号
  • char本质上就是一个无符号的两个字节的整数,范围[0,65535]
char b='b';
char c='c';
char d='d';
System.out.println(b);
System.out.println(c);
System.out.println(d);
		
char b1=98;
char b2=99;
char b3=100;
System.out.println(b1);
System.out.println(b2);
System.out.println(b3);

2.引用数据类型

数据类型,分为两类:基本数据类型,引用数据类型

基本数据类型:4类8种

引用数据类型:除去基本数据类型,剩下的都是引用类型

  • jdk提供的类型(String,Date,Integer,Double,Thread,Calender)
  • 自定义的数据类型(面向对象)
2.1 String数据类型

如何在程序中表示班级的名称:hf-java-jy-2204班

package com.qfedu;

public class Demo02 {
	public static void main(String[] args) {
		
		/*
		 * 引用数据类型-字符串
		 * 如果一个值,是由多个字符组成的,那么就可以把值放在String类型变量开辟的空间中
		 */
		
		String classNameString = "hf-java-jy-2204班";
		String name = "white";
		String str="";//空字符串
		String str1=" ";//空格也是字符串
		
		//定义国家,家乡,电影
		String country="中国";
		String hometown="合肥";
		String movie="泰坦尼克号";
		
	}
}

3.数据类型转化

数据类型转化就是把一种数据类型的值赋值给其他数据类型

数据类型转化分为:

  • 自动转化
    • 数据兼容
    • 范围从小到大
  • 强制转化
    • 数据兼容
    • 范围从大到小
package com.qfedu;
public class Demo03 {
	public static void main(String[] args) {
		
		/*
		 * byte--double
		 * 数据类型可以自动转化
		 */
		byte b=5;//开辟了一个字节八位的空间,保存5这个数
		System.out.println(b);
		short s = b;//开辟了两个字节十六位的空间
		System.out.println(s);
		int i=s;
		long l=i;
		
		float f=l;
		double d=f;
		
		//强制转换
		float f2=(float)d;
		long l2=(long) f2;
		int i2=(int) l2;
			
		double d2 =3.14;
		int i3=(int) d2;//会自动取整
      
      //String str = "abc";
//		int i5=str;//不兼容的数据不能相互转化
	}
}

4.运算

4.1 算数运算

加减乘除余

/*
 * 运算-算术运算
 */
int r1 = a + b;
int r2 = a - b;
int r3 = a * b;
int r4 = a / b; // 整数和整数的运算结果还是为整数
int r5 = a % b; // 1余数一定是小于除数,除去余下的数

// 可通过取余和除数得到一个数每个位的值
int n = 3654;

double c = 5.4, d = 2.0;
double r6 = c / d;
double r7 = c % d;
System.out.println(r6); // 2.7
System.out.println(r7);
4.2 赋值运算

符号:=

package com.qfedu;

public class Demo04 {
	public static void main(String[] args) {
		int a = 5;
		int b = 2;

		/*
		 * 运算-赋值运算 1. = 在java中表示赋值符,把右边的值赋值给左边的变量
		 */
		int e = 6;
		e = e + 1;
		e = e - 5;
		e = e * 3;
		e = e / 2;
		e = e % 5;

		int f = 5;
		f += 4; // f=f+4
		f -= 3;
		f *= 3;
		f /= 2;
		f %= 5;

		int g = 8;
		g = g + 1;
		g += 1;
		g++;
		++g;

		int h = 9;
		h = h - 1;
		h -= 1;
		h--;
		--h;

		int j=6;
		int r11 = j++;//先赋值再运算
		System.out.println(j);
		int r22=++j;//先运算再赋值
		System.out.println(j);
		
		System.out.println(j--);//8
		System.out.println(--j);//6
		System.out.println(j);//6
		
		
		int k=7;
		
		int r=k++ +3 + --k +6 + k++ -5;
		
	}
}

4.3 关系运算

等于,不等于,大于,小于,大于等于,小于等于
=,!=,>,<,>=,<=

比较的结果在java中是boolean类型的数据

  • 成立 true
  • 不成立 false
package com.qfedu;

public class Demo05 {
	/*
	 * 运算-关系运算 等于 == 不等于 !=
	 */
	public static void main(String[] args) {
		int a = 5;
		int b = 5;
		boolean r1 = a == b; // true

		String str1 = "hello";
		String str2 = "hello";
		boolean r2 = str1 == str2; // true

		boolean r3 = a != b;// false
		int c = 5, d = 2;
		boolean r4 = c >= d;// true

		boolean r5 = c < 14; // true
		
		System.out.println(r1);
		System.out.println(r2);
		System.out.println(r3);
		System.out.println(r4);
		System.out.println(r5);
	}
}

4.4 逻辑运算

且或非

package com.qfedu;

public class Demo06 {
	/*
	 * 运算-逻辑运算
	 */
	public static void main(String[] args) {
		int score = 95;
		// 判断分数等级是不是A【90-100】

		boolean r1 = score >= 90;
		boolean r2 = score <= 100;

		boolean r = r1 && r2;
		System.out.println(r);

		// 判断分数是否正确 小于0 大于100
		boolean r3 = score < 0;
		boolean r4 = score > 100;

		boolean rr = r3 || r4;
		System.out.println(rr);

		// 判断分数等级是不是不是A
		boolean rr2 = !r;

		// 是否成年
		boolean isAdult = false;

		// 是否未成年
		boolean rr3 = !isAdult;
		
		/*
		 * 定义年龄变量
		 * 1.判断年龄是否在【18,25】
		 * 2.判断年龄是否在【18,25】或者【18,32】
		 * 3.判断年龄是否不在【18,25】
		 */
		int age=23;
		boolean r5= age>=18 && age<=25;
		System.out.println(r5);
		
		boolean r6=r5 || (age>=28&&age<=32);
		System.out.println(r6);
		
		boolean r7=!r5;
		System.out.println(r7);

	}
}
package com.qfedu;

public class Demo06_2 {
	public static void main(String[] args) {
		/*
		 * 断路
		 * 当一个逻辑运算的结果已经确定的时候,后面的就不需要运算了
		 */
		
		int a=5;
		boolean r=a++ >=6 && a++ >2;
		
		System.out.println(a); //6
		System.out.println(r); //false
	}
}
4.5 三元表达式

语法:

数据类型 变量 = 逻辑表达式?1:2//常见,需掌握

数据类型 变量 = 逻辑表达式?表达式1:表达式2//了解即可
  • 如果表达式成立,则返回值1,如果不成立则返回值2
  • 如果表达式成立,则返回表达式1,反之则返回表达式2
package com.qfedu;

public class Demo07 {
	public static void main(String[] args) {
		int age = 18;
		// 判断是否成年

		boolean r = age >= 18;
		System.out.println(r);
		
		//想得到结果 成年 未成年
		String result= age>=18?"成年":"未成年";
		System.out.println(result);
		
		int score=88;
		/*
		 * 获取该成绩的等级
		 * 0-59分    D
		 * 60-79分 C
		 * 80-89分 B
		 * 90-100 A 
		 */
		
		char level=score<60?'D':score<80?'C':score<90?'B':'A';	
	}
}

5.类型提升

package com.qfedu;

public class Demo08 {
	public static void main(String[] args) {
		
		//只要是byte类型和short类型进行算数运算得到的结果都为int类型
		byte a=5;
		byte b=6;
		int r1=a+b;
		
		/*
		 * int    byte  short  int   ===>  int
		 */
		int i=5;
		int r3=i+a;
		
		/*
		 * long   byte  short  int long  ===> long
		 */
		long l=18;
		long r4=i+l;
		
		/*
		 * float byte  short  int long float === > float
		 */
		float f=3.14f;
		float r5=f+l;
		
		/*
		 * double byte  short  int long float double ===>double
		 */
		double d=2.18;
		double r6=d+f;
		
		/*
		 * char类型也可以进行算数运算
		 */
		char ch1=6;
		char ch2=8;
		int r7=ch1+ch2;
		
		/*
		 * 如果加号的两边出现字符串类型的变量,
		 * +号不再是算数运算符,充当连接符
		 * 返回的数据一定是字符串类型
		 */
		String str1="abc";
		String str2="efg";
		String r8=str1+str2;
		System.out.println(r8);
	}
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值