今日所学
巩固昨天所学内容
小练习:
import java.util.Scanner;
/**
* @author ZheShao
* @version 1.0
* 要求:
* 提示用户输入年龄和姓名 并打印
* @description: TODO
* @date 2024/1/23 8:29
*/
public class IdentifyDemo01 {
public static void main(String[] args) {
//键盘扫描器
//表示创建一个Scanner类型的引用 (sc) 指向Scanner类型的对象 System.in可以看成一个键盘
Scanner sc=new Scanner(System.in);
System.out.println("请输入姓名");
String name = sc.next();
System.out.println("请输入年龄");
int age = sc.nextInt();
System.out.println("姓名为:"+name+",年龄为:"+age);
}
}
运行结果:
import java.util.Scanner;
/**
* @author ZheShao
* @version 1.0
* 要求:
* 提示用户输入学号,班级,座右铭,并打印
* @description: TODO
* @date 2024/1/23 8:36
*/
public class IdentifyDemo02 {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
System.out.println("请输入你的学号");
int usernumber = sc.nextInt();
System.out.println("请输入你的班级");
String userclass = sc.next();
System.out.println("请输入你的座右铭");
String motto = sc.next();
System.out.println("学号为:"+usernumber+",班级为:"+userclass+",座右铭为:"+motto);
}
}
运行结果:
数据类型
数据类型的分类:基本数据类型、引用数据类型
基本数据类型:8种
整型:byte、short、int、long(8个字节,但是如果数据的长度较小的话【正负21亿范围内】,long类型占4个字节,当数据大于正负21亿时,自动转为8字节。)
浮点类型:float、double
布尔类型:boolean
字符类型:char
引用数据类型:数组、类、枚举、接口...
类型转换
从小到大:自动转换
从大到小:强制类型转换【可能会丢失精度】
import java.util.Scanner;
/**
* @author ZheShao
* @version 1.0
* 要求:
* 用户输入下落时间t(整数),并按照公式0.5*9.8*t*t来计算下落的位移并打印出来。其中小数数据使用double类型声明的变量来记录。
* @description: TODO
* @date 2024/1/23 8:46
*/
public class IdentifyDemo03 {
public static void main(String[] args) {
double a=0.5;
double b=9.8;
int t;
Scanner sc=new Scanner(System.in);
System.out.println("请输入下落的时间t");
t = sc.nextInt();
double x=a*b*t*t;
System.out.println("下落的位移为:"+x);
}
}
运行结果:
import java.util.Scanner;
/**
* @author ZheShao
* @version 1.0
* 要求:
* 提示用户输入一个正整数类型的秒数,拆分为时分秒并打印出来。
* 加法 -减法 乘法 除法取余
* 如:3666秒 => 1小时1分钟6秒
* @description: TODO
* @date 2024/1/23 8:56
*/
public class IdentifyDemo04 {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
System.out.println("请输入一个正整数类型的秒数:");
int s = sc.nextInt();
int time=s/3600;
int minute=s%3600/60;
int second=s%3600%60;
System.out.println(time+"小时"+minute+"分钟"+second+"秒");
}
}
常见的运算符
逻辑运算符 与、或的短路特性
逻辑与运算符:当&&前面的表达式为假时,后面不做判断
逻辑或运算符:当前面的表达式为真时,后面不做判断
import java.util.Scanner;
/**
* @author ZheShao
* @version 1.0
* 要求:
* 提示用户输入一个三位数的正数,然后进行逆序处理在打印
* @description: TODO
* @date 2024/1/23 9:35
*/
public class IdentifyDemo05 {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
System.out.println("请输入一个正三位数:");
int number = sc.nextInt();
while (true) {
if (number >= 100 && number <= 999) {
int ge = number % 10;
int shi = number / 10 % 10;
int bai = number / 100;
int x = ge * 100 + shi * 10 + bai;
System.out.println(x);
break;
} else {
System.out.println("输入错误,请重新输入");
number = sc.nextInt();
}
}
}
}
自增减运算符
/**
* @author ZheShao
* @version 1.0
* @description: TODO
* @date 2024/1/23 9:53
*/
public class ArithmaticDemo01 {
public static void main(String[] args) {
int d=3;
int e=d++;
int c=++d;
System.out.println("e="+e);
System.out.println("c="+c);
}
}
三目运算符
import java.util.Scanner;
/**
* @author ZheShao
* @version 1.0
* 要求:
* 使用三目运算符判断用户输入的整数的正数,负数还是零
* @description: TODO
* @date 2024/1/23 10:06
*/
public class ThreeEyesDemo01 {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
System.out.println("请输入一个数");
int number = sc.nextInt();
String s=number>0?"你输入的是一个正数":(number==0?"你输入的是0":"你输入的是一个负数");
System.out.println(s);
}
}
判断语句
if语句
import java.util.Scanner;
/**
* @author ZheShao
* @version 1.0
* 要求:
* 用if分支结构,提示用户输入两个数,求最大值!
* @description: TODO
* @date 2024/1/23 10:47
*/
public class IfDemo {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
System.out.println("请输入两个数");
int a = sc.nextInt();
int b = sc.nextInt();
int max=a;
if(a<=b){
max=b;
}
System.out.println("最大值为:"+max);
}
}
if-else语句
import java.util.Scanner;
/**
* @author ZheShao
* @version 1.0
* @description: TODO
* @date 2024/1/23 11:03
*/
public class If_elseDemo02 {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
System.out.println("请输入你的高考成绩");
double grade = sc.nextDouble();
if(grade > 650){
System.out.println("上清北");
}else if (grade >= 550 && grade < 650){
System.out.println("上211");
}else if (grade >= 450 && grade < 550){
System.out.println("上一本重点");
}else if (grade >= 350 && grade < 450){
System.out.println("上二本");
}else{
System.out.println("上钟摆");
}
}
}
大厂经验:
基础知识和细节 开放的问题 自己做的项目(必须是大项目)
最简单途径是校招 看学历 看竞赛 实习(实习平台 招聘官网 内推直接笔试)
实习大三----三到六月 多刷题
面试分为技术面和hr面 尽量把问题引到自己熟悉的问题的地方