JAVA
//错误提示
1.黄色警告(可能发生错误,不用处理)
2.红色警告(编译时的错误)
承接上一章
java的初始
5.字符的转换和字符串的连接
1.字符的转换
1.隐式转换(将小字节类型转化成大字节类型)
double d = 10;[将int整型4个字节 10 转换成 double浮点型8个字节 10.0]
2.强制转换
int a = (int)3.64;[将double大字节 3.64 强制转换成int整型小子节 3]
2.字符串类型
1.注意:字符用单引号'' ,字符串用双引号""
String str = "Hello";
System.out.println(str);
2.字符串连接
两个字符串用 + 连接,表示字符串的拼接.
String str1 = "World";
System.out.println(str + str1);//输出结果是HelloWorld
3.变量与字符串的连接
int num1 = 10;
int num2 = 15;
System.out.println(num1 + num2);//输出结果是25
System.out.println(str1 + num1 + num2);//输出结果是World1015
**与字符串相加,得到的永远是字符串**
如果想显示num1 = 10;
System.out.println("num1 = " + num1);
4.判断字符串是否相等
// boolean 布尔类型 只有两个值 true(真)和false(假)
String s4 = "Hello";
String s5 = "World";
boolean b1 = s4.equals(s5);
System.out.println("b1 = " + b1);
//输出的结果是false,说明两个字符串不相等
6.进制的转换
//将十进制转换为二进制 [类名.转换方法(值) 再用一个字符串接收]
String s1 = Integer.toBinaryString(15);
System.out.println("s1 = " + s1);
//将十进制转化为十六进制
String s2 = Integer.toHexString(15);
System.out.println("s2 = " + s2);
//将十进制转化为八进制
String s3 = Integer.toOctalString(15);
System.out.println("s3 = " + s3);
java之运算符
1.算术运算符 + - * / %(取余) ++(自增) --(自减)
1.取余运算
//通常用来判断一个数是不是偶数
int n = 3 % 5;
System.out.println("n = " + n);
**特殊提示:
编译通过(没有语法错误) [若是有语法错误,行数那里爆红]
运行时错误 [解决办法:复制下方类名,粘贴到dash,查找运行错误]**
2.自增运算(相当于n2 = n2 + 1)
int n2 = 10;
n2++;
System.out.println("n2 = " + n2);//输出 11
**特殊提示:
++在前 先自增,再运算(n5 = n3 + ++n4;看成n4++;然后n5 = n3 + n4)
++在后 先运算,再自增(n5 = n3 + n4++;看成n5 = n3 + n4,然后n4++)**
举例:
int n3 = 10;
int n4 = 10;
int n5 = n3 + n4++;
System.out.println("n4 = " + n4);//输出11
System.out.println("n5 = " + n5);//输出20
n4 = 10;
n5 = n3 + ++n4;
System.out.println("n4 = " + n4);//输出11
System.out.println("n5 = " + n5);//输出21
2.关系运算符(主要用来当做判断条件)
使用条件运算符时,会有一个返回值,返回值类型是布尔类型
< <= > >= == !=
= 赋值
== 值相等
int n6 = 10;
int n7 = 15;
boolean b1 = n6 == n7;//不成立
System.out.println(b1);//输出false
3.逻辑运算符
逻辑运算符(判断后会有布尔类型的返回值)
&& 与 (条件一&&条件二) 一假则假
|| 或 (条件一||条件二) 一真则真
! 非 非真既假
int n8 = 10;
int n9 = 15;
// 假 真
boolean b2 = (n8 > n9) && (n8 > 1);
boolean b3 = (n8 > n9) || (n8 > 1);
System.out.println(b2);//输出false
System.out.println(b3);//输出true
// 注意: 短路现象
// 逻辑 与 当条件一为假时 不会再执行条件二 ,直接返回结果
// 逻辑 非 当条件一为真时,不会再执行条件二,直接返回结果
boolean b4 = (n8 > n9) && (n8++ > 1);
System.out.println("b4 = " + b4);// false
System.out.println(n8);//不执行条件二,所以输出10
boolean b5 = (n8 < n9) || (++n9 > 1);
System.out.println("b5 = " + b5);// true
System.out.println(n9);//不执行条件二,所以输出15
4.特殊之三目运算符(三元运算符)
判断条件 ? 值1(真) : 值2(假)
如果判断条件成立 输出值1 不成立输出值2
//求三个数的最大值
int n1 = 10;
int n2 = 6;
int n3 = 15;
int m1 = (n1 > n2) ? n1 : n2;
int m2 = (m1 > n3) ? m1 : n3;
System.out.println("三个数最大值:" + m2);
java之流程控制
1.顺序结构(代码 自上而下 逐行执行)
2.分支结构(if 和 switch)
什么时候用if 语句 (判断的是 范围)
什么时候用switch 语句 (判断的是 具体的几个值)
1.if的三种形式
形式一:
if(判断条件){
条件成立时,执行的语句(可以是多条语句)
}
形式二:
if(判断条件一){
条件一成立,执行语句一;
}else{
条件一不成立,执行语句二;
}
形式三:
if(判断条件一){
条件一成立,执行语句一;
}else if(判断条件二){
条件一不成立的时候,如果条件二成立,执行语句二
}else{
条件一,二都不成立,执行语句三
}
举例:
// 键盘输入一个成绩
System.out.println("请输入一个成绩:");
//创建一个 从键盘接受字符串的 对象
//数据类型 变量名 = 初值;
Scanner scanner = new Scanner(System.in);
//接受输出的字符串1
String str = scanner.nextLine();
//接受输出的字符串2
String str1 = scanner.nextLine();
System.out.println("输入的是:" + str);
//将字符串转化成整型,并创建一个整型变量来接收
int number = Integer.parseInt(str);
2.switch语句
switch (被匹配的值) {
case 匹配的值1:
值匹配成功 执行的语句
break; // 跳出switch语句(跳出switch这对大括号) 如果所有的break都删除,则从匹配的值那里开始,后面的语句全部执行
case 匹配的值2:
值匹配成功 执行的语句
break;
case 匹配的值3:
值匹配成功 执行的语句
break;
default: //可有可没有,如果找到就执行 反之就不执行
如果所有case都没有匹配成功
执行default中的语句
break;
}
3.循环结构
1.while语句
1️⃣
while(判断条件){
2️⃣
循环体(一条或多条语句)
}
1->2->1->2->1
当判断条件不成立时,则循环结束
举例:
// 累加思想
//求1到10的和(使用循环)
//声明一个循环增量
int i = 1;
//声明一个变量,保存结果
int sum = 0;
while(i <= 10) {
//求和
// 0 + 1
// 1 + 2
// 3 + 3
// ...
sum = sum + i;
i++;
}
System.out.println(sum);
//while最简单死循环
//while(true){
// 我是死循环;
//}