2024/1/23



JDK :java Development Kit Java 开发工具包
JRE:Java Runtime Environment Java 运行时环境(只要运行java就需要安装jre)



编写java程序的流程


1.创建记事本后缀改为.java
2.如果要输出中文编码方式改为ANSI
3.打开CMD DOS命令行窗口 切换到Java源文件所在目录
4.通过javac 文件名.Java 对java进行编译(之后项目在部署或上线的时候 上传的都是字节码文件)
5通过java 文件名 进行解释运行



数据类型

整数类型,byte(1),short(2),int(4),long(4个字节,过大自动转为8个)
浮点数据类型:float,double
布尔类型:boolean
字符类型 :char
引用数据类型:数组。类。枚举,接口

类型转换
从小到大:自动转换
从大到小:强制转换



常用运算符



加减乘除取余

public class Try {
    public static void main(String[] args) {
        //加减乘除取余
        int a = 3;
        int b = 4;
        System.out.println(a+b);
        System.out.println(a-b);
        System.out.println(a*b);
        System.out.println(b/a);
        System.out.println(b%a);
    }
}


字符串连接符+

import java.util.Scanner;

public class Day {
    public static void main(String[] args) {
        System.out.println("请输入你的学号,班级,座右铭.");//提示用户输入
        Scanner sc =new Scanner(System.in);
        //定义并读取键盘输入数据
        String no = sc.next();
        int number = sc.nextInt();
        String say = sc.next();
        //输出
        System.out.println("你叫:"+no+",你的班级"+number+",座右铭为:"+say);
    }
}
import java.util.Scanner;

public class Day0123 {
    public static void main(String[] args) {
        System.out.println("请输入你的姓名和年龄");//提示用户输入姓名和年龄
        Scanner sc = new Scanner(System.in);//键盘扫描器,创建一个Scanner类型
        //创建String类型的name,int类型的age
        String name;
        int age;
        //读取键盘输入的数据
        name = sc.next();
        age = sc.nextInt();
        //输出姓名和年龄
        System.out.println("您叫:"+name+",年龄为"+age+"岁。");
    }
}


关系运算符


大于> 小于< 等于= 不等于!= >=大于等于 <=小于等于
赋值运算符 =
逻辑运算符与(&&)或(||)非(!)
与:当&&两边为真时,结果为真;(前面为假,后面不做判断)
或:任意一边为真时,结果为真;(前面为真,后面不做判断)
非:当表达式为真,结果为假;表达式为假,结果为真


自增减运算符: 加加,减减


int a=3;int b=0;
b=a++;(b=3,a=4)
b=++a;(b=4,a=4);
b=a--;(b=3,a=2)
b=--a(b=2,a=2)

public class Add {
    public static void main(String[] args) {
        int a = 3;//a赋值
        int b = a++;//赋值b
        System.out.println("b="+b);
        int c = ++a;//赋值c
        System.out.println("c="+c);
    }
}


三目运算符


条件表达式?表达式1:表达式2

import java.util.Scanner;

public class T {
    public static void main(String[] args) {
        System.out.println("请输入一个数:");//提示用户输入数据
        Scanner sc =new Scanner(System.in);
        int a = sc.nextInt();//定义并读入
        System.out.println(a>0?"你输入的是正数":(a==0?"你输入的是0":"你输入的是负数"));//输出
    }
}



流程控制


在java中,任何复杂逻辑,都可用顺序,分支,循环三种结构进行描述

2024/1/23_第1张图片



分支结构


概念:在java中,当需要使用条件判断,需要使用分支结构


if分支


if(条件表达式){语句块}
else{语句块}

eg:

import java.util.Scanner;

public class T3 {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入一个数");
        int a = sc.nextInt();
        if(a>=0){
            System.out.println("该数为非负数");
        }else{
            System.out.println("该数为负数");
        }
    }
}
import java.util.Scanner;


public class T2 {
    public static void main(String[] args) {
        System.out.println("请输入您的年龄:");//提示用户输入年龄
        Scanner sc = new Scanner(System.in);
        int age = sc.nextInt();
        if(age>=18){
            System.out.println("你可以打游戏,不受未成年限制");
        }else{
            System.out.println("该吃吃,该喝喝,好好学习");
        }
    }
}
import java.util.Scanner;

public class T4 {
    public static void main(String[] args) {
        System.out.println("请输入你的高考分数");
        Scanner sc = new Scanner(System.in);
        int a = sc.nextInt();
        if(a>650){
            System.out.println("650来上中北大学吧,寒假都有早八哦");
        }else{
            if(a>=550){
                System.out.println("来中北吧,人民军工第一校");
            }else{
                if(a>=450){
                    System.out.println("安安心心上中北吧");
                }else{
                    if(a>=350){
                        System.out.println("你连中北也上不了");
                    }else{
                        System.out.println("洗洗睡吧");
                    }
                }
            }
        }
    }
}
switch-case 分支

switch语句的变量类型可以是:byte,short,int或char
现在可以用String
default在没有case配对时执行


switch(表达式){
    case 1:语句1
    break;
    case 2:语句2
    break;
    default 语句end;
}

import java.util.Scanner;

public class Test {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入你得业绩名次");
        int num = sc.nextInt();
        switch(num){
            case 1:
                System.out.println("欧洲游");
                break;
            case 2:
                System.out.println("亚洲游");
                break;
            case 3:
                System.out.println("国内游");
                break;
            case 4:
                System.out.println("省内游");
                break;
            default:
                System.out.println("你游什么啊");
        }
    }
}
import java.util.Scanner;

public class SwitchTest {
    public static void main(String[] args) {
        System.out.println("请输入现在是几月:");
        Scanner sc = new Scanner(System.in);
        int month = sc.nextInt();
        /*if(mouth==1||mouth==3||mouth==5||mouth==7||mouth==8||mouth==10||mouth==12){
            System.out.println("这个月有31天");
        }else{
            if(mouth==2){
                System.out.println("这个月有28天");
            }else{
            System.out.println("这个月有30天");
            }*/
        switch(month){
            case 1:
            case 3:
            case 5:
            case 7:
            case 8:
            case 10:
            case 12:
                System.out.println("当月有31天");
                break;
            case 4:
            case 6:
            case 9:
            case 11:
                System.out.println("当月有30天");
                break;
            default:
                System.out.println("当月有28天");
        }
    }
}


循环结构


for循环

for(初始表达式;条件表达式;修改初始表达式){
    循环体;
}

public class ForTest {
    public static void main(String[] args) {
        for(int i=0;i<11;i++){
            System.out.println(i);
        }
    }
}
public class ForTest01 {
    public static void main(String[] args) {
        for(int i=0;i<101;i++){
            if(i%2==0){
                System.out.println(i);
            }
        }
    }
}
while循环


while(条件表达式){
    循环体;
    修改初始表达式;
}

public class WhileTest {
    public static void main(String[] args) {
        int i=0;
        while(i<=10){
            System.out.print(i+" ");
            i++;
        }
    }
}
import java.util.Scanner;

public class WhileTest01 {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int i = 0;
        while(true){
            System.out.println("你已经跑" + i + "圈");
            System.out.println("是否还能跑:");
            String str = sc.next();
            if("否".equals(str)){
                System.out.println("不行,跑不动了");
                break;
            }
            else {if("是".equals(str)){
                System.out.println("正在跑第"+i+"圈,加油!!");
                i++;
            }}
        }
    }
}
do-while循环


//do-while循环至少会执行一次

do{
    循环体;
    修改初始表达式;

}while(条件表达式)

public class Do_WhileTest {
    public static void main(String[] args) {
        int i = 1;
        do{
            System.out.println(i);
            i++;
        }while(i < 11);
    }
}

双重for循环


for(初始表达式1;条件表达式2;修改初始表达式3){
    for(初始表达式4;条件表达式5;修改初始表达式6){
        循环体;
    }
}

public class DoubleFor {
    public static void main(String[] args) {
        for(int i=1;i<=5;i++){
            for(int j=0;j
public class DoubleFor01 {
    public static void main(String[] args) {
        for(int i=1;i<10;i++){
            for(int j=1;j<=i;j++){
                System.out.print(i+"x"+j+"="+i*j+"  ");
            }
            System.out.println();
        }
    }
}

break和continue;

break:表示结束当前语句块,在循环中表示结束当前循环体
continue:表示跳出该循环体,继续执行下一次循环

public class BreakContinue {
    public static void main(String[] args) {
        for(int i=0;i<10;i++){
            if(i==5){
                break;
            }
            System.out.print(i+" ");
        }
        System.out.println();
        for(int i=0;i<10;i++){
            if(i==5){
                continue;
            }
            System.out.print(i+" ");
        }
    }
}

课后练习

输出一个最大值

import java.util.Scanner;

public class If {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入第一个数");//提示用户输入
        int a = sc.nextInt();//定义并输入a
        System.out.println("请输入第二个数");//提示用户输入
        int b = sc.nextInt();//定义并输入b
        int max = a;
        if (ab){
            max = a;
        }else{
            max = b;
        }*/
        System.out.println("最大值为:"+max);//输出最大值
    }
}

输入三位数,倒着输出

import java.util.Scanner;

public class T1 {
    public static void main(String[] args) {
        /*System.out.println("请输入三位数:" );
        Scanner sc = new Scanner(System.in);
        int a = sc.nextInt();
        if(a>99&&a<1000) {
            System.out.print((a % 10));
            System.out.print((a % 100) / 10);
            System.out.print(a / 100);
        }else{
            System.out.println("您输入的不是三位数");
        }*/
        System.out.println("请输入三位数:" );
        Scanner sc = new Scanner(System.in);
        int num = sc.nextInt();
        String str = String.valueOf(num);
        StringBuffer st = new StringBuffer(str);
        str = st.reverse().toString();//该方法返回的是一个StringBuffer对象,所以需要toString()方法
        int res = Integer.parseInt(str);
        System.out.println(res);

    }
}

输入时间求下落高度

import java.util.Scanner;

public class Text {
    public static void main(String[] args) {
        System.out.println("请输入下落的时间t:");//提示用户输入
        Scanner sc =new Scanner(System.in);
        int t = sc.nextInt();//读入时间
        Double h = 0.5*9.8*t*t;//计算高度
        System.out.println("下落高度为:"+h);//输出高度
    }
}

作业

import java.util.Scanner;

public class HomeWork {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入您的薪资:");
        Double money = sc.nextDouble();
        if(money<0){
            System.out.println("请输入正确的薪资!!!");
        }
        if(money>0&&money<=5000){
            System.out.println("您不需要交个人所得税。");
        }else{
            if(money<=8000){
                System.out.println("您需要缴纳个人所得税:"+money*0.03);
            }else{
                if(money<=17000){
                    System.out.println("您需要缴纳个人所得税:"+money*0.1);
                }else{
                    if(money<=30000){
                        System.out.println("您需要缴纳个人所得税:"+money*0.2);
                    }else{
                        if(money<=40000){
                            System.out.println("您需要缴纳个人所得税:"+money*0.25);
                        }else{
                            if(money<=60000){
                                System.out.println("您需要缴纳个人所得税:"+(money*0.3));
                            }else{
                                if(money<=85000){
                                    System.out.println("您需要缴纳个人所得税:"+(money*0.35));
                                }else{
                                    System.out.println("您需要缴纳个人所得税:"+money*0.45);
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}

路线图,老师的

2024/1/23_第2张图片2024/1/23_第3张图片2024/1/23_第4张图片

你可能感兴趣的:(java)