IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> Java知识库 -> java基础练习(持续更新) -> 正文阅读

[Java知识库]java基础练习(持续更新)

java基础练习:变量、数据类型、输入、输出、运算符

练习1:判断输入的值是否是偶数,另外,要处理输入错误

import java.util.Scanner;
public class Main {
    public static void main(String[] args) {
        Scanner input = new Scanner(System.in);
        System.out.println("请输入一个数字:");
        if(input.hasNextInt()){
            int num=input.nextInt();
            if(num%2==0){
                System.out.println("是偶数");
            }else {
                System.out.println("是奇数");
            }
        }else {
            System.out.println("输入无效!");
        }
    }
}

练习2:输入并输出姓名、年龄、身高

import java.util.Scanner;
public class Main {
    public static void main(String[] args) {
        Scanner input = new Scanner(System.in);
        System.out.println("请输入姓名:");
        String name=input.next();
        System.out.println("请输入年龄:");
        String age=input.next();
        System.out.println("请输入身高:");
        double height=input.nextDouble();
        System.out.println("姓名:"+name);
        System.out.println("年龄:"+age);
        System.out.println("身高:"+height);
    }
}

练习3:从控制台获取Java、Oracle、HTML三门课程的成绩,计算总分和平均分(平均分保留2位小数,要求四舍五入)

import java.util.Scanner;
public class Main {
    public static void main(String[] args)
        {
            Scanner input = new Scanner(System.in);
            System.out.print("请输入Java成绩: ");
            int javaScore=input.nextInt();
            System.out.print("请输入Oracle成绩: ");
            int oracleScore=input.nextInt();
            System.out.print("请输入HTML成绩: ");
            int htmlScore=input.nextInt();
            System.out.println("-------------------------------- ");
            System.out.println("Java Oracle HTML");
            System.out.println();
            System.out.println(""+javaScore+"\t"+oracleScore+"\t"+htmlScore);
            System.out.println("-------------------------------- ");

            int sum=javaScore+oracleScore+htmlScore;
            double  average=sum/3.0;
            String result = String.format("%.2f", average);

            System.out.println("总成绩是:"+sum);
            System.out.println("平均成绩是:"+result);
        }
}

练习4:输入一个数字,反转输出,如:输入123,输出321

import java.util.Scanner;
public class Main {
    public static void main(String[] args)
        {
            Scanner input = new Scanner(System.in);
            System.out.print("请输入一个整数: ");
            String num=input.next();
            for(int i = num.length()-1;i >= 0;i--)
            {
                System.out.print(num.charAt(i));
            }
        }
}

练习5:输入tom和jack的年龄,比较年龄并输出相差多少岁,要求使用条件运算符

import java.util.Scanner;
public class Main {
    public static void main(String[] args)
        {
            Scanner input = new Scanner(System.in);
            System.out.print("请输入tom的年龄: ");
            int tomAge=input.nextInt();
            System.out.print("请输入jack的年龄: ");
            int jackAge=input.nextInt();
            int num=tomAge-jackAge;
            if(num==0){
                System.out.println("tom与jack一样大");
            }else {
                if (num>0)
                {
                    System.out.println("tom比jack大"+num+"岁");
                }else {
                    System.out.println("tom比jack小"+num+"岁");
                }
            }
        }
}

练习6:交换两个数值变量的值(至少两种方法)

public class Main {
    public static void main(String[] args)
        {
//            方法一
            int a=1,b=2;
            int c=a;
            a=b;
            b=c;
            System.out.println(a);
            System.out.println(b);
//            方法二
            int d=1,f=2;
                d=d+f;
                f=d-f;
                d=d-f;
            System.out.println(d);
            System.out.println(f);

        }
}

练习7:下面结果分别是?为什么?

int a = 97;
char b = a;
System.out.println(b);

报错,int类型无法赋值char

char c = 97; 
System.out.println(c);

*char为字符类型,97为a,最后输出为a;

int m =  3 ; 
int n = m++ + ++m; 
System.out.println( "m:" +m+ ", n:" +n);

++m:先自加1再进行运算
m++:先运算后再自加1

先计算(m++)中。前面m=3,(m++)就是先m=3参与计算,再自加1,原式等价于:n=3+(m++),同时m的值变成了5(自加1)。

m:5, n:8

java基础练习:选择结构(if、switch)

练习1:提示用户输入三个整数,判断并输出最大值、最小值

import java.util.Scanner;
public class Main {
    public static void main(String[] args) {
        Scanner input = new Scanner(System.in);
        System.out.print("请输入第一个整数: ");
        int oneNum = input.nextInt();
        System.out.print("请输入第二个整数: ");
        int twoNum = input.nextInt();
        System.out.print("请输入第三个整数: ");
        int treeNum = input.nextInt();
        int maxNum = 0;
        int mixNum=0;
        if(oneNum>twoNum){
            if (oneNum>treeNum){
                maxNum=oneNum;
            }else {
                maxNum=treeNum;
            }
        }else {
            if(twoNum>treeNum){
                maxNum=twoNum;
            }else {
                maxNum=treeNum;
            }
        }

        if(oneNum>twoNum){
            if (twoNum>treeNum){
                mixNum=treeNum;
            }else {
                mixNum=treeNum;
            }
        }else {
            if(oneNum>treeNum){
                mixNum=treeNum;
            }else {
                mixNum=oneNum;
            }
        }
        System.out.println("最大数为:"+maxNum);
        System.out.println("最小数为:"+mixNum);
    }
}

练习2:如果今天是周日且晴天,就出去嗨

如果今天是周日但不是晴天,睡懒觉

如果今天不是周日,继续996

说明:天气、星期几的变量,自己定义即可;主要练习if嵌套

import java.util.Scanner;
public class Main {
    public static void main(String[] args) {
        Scanner input = new Scanner(System.in);
        System.out.print("请输入周几:");
        int num = input.nextInt();
        System.out.print("请输入天气: ");
        String weather = input.next();
        if(num>0){
            if (num<=5) {
                System.out.println("今天是工作日,天气" + weather + "继续996");
            }else if(num>6&&num<8) {
                if (weather == "晴天") {
                    System.out.println("如果今天是周日,天气" + weather + "出去嗨");
                }else {
                    System.out.println("如果今天是周日,天气" + weather + "睡懒觉");
                }
            }
        }else {
            System.out.println("请输入一到七的日期数字");
        }
    }
}

练习3:由键盘输入三个整数分别存入变量num1、num2、num3,对它们进行排序(使用 if-else if-else),并且从小到大输出。

import java.util.Scanner;
public class Main {
    public static void main(String[] args) {
        Scanner input = new Scanner(System.in);
        System.out.print("请输入第一个整数:");
        int num1 = input.nextInt();
        System.out.print("请输入第二个整数:");
        int num2 = input.nextInt();
        System.out.print("请输入第三个整数:");
        int num3 = input.nextInt();
        System.out.println("您输入的3个整数为:"+num1+","+num2+","+num3);
        if(num1 > num2) {
            if (num3 > num1) {
                System.out.println("从小到大的排序:" + num2 + "," + num1 + "," + num3);
            } else if (num3 < num2) {
                System.out.println("从小到大的排序:" + num3 + "," + num2 + "," + num1);
            } else {
                System.out.println("从小到大的排序:" + num2 + "," + num3 + "," + num1);
            }
        }else{
            if(num3 > num2){
                System.out.println("从小到大的排序:"+num1 + "," + num2 + "," + num3 );
            }else if(num3 < num1){
                System.out.println("从小到大的排序:"+num3 + "," + num1 + "," + num2 );
            }else{
                System.out.println("从小到大的排序:"+num1 + "," + num3 + "," + num2 );
            }
        }
    }
}

练习4:提示用户输入三角形的边a、b、c,范围必须在 [1,100) 之间,判断三角形的类型:1.非三角形;2.等边三角形;3.直角三角形;4.等腰三角形;5.普通三角形

import java.util.Scanner;
public class Main {
    public static void main(String[] args) {
        Scanner input = new Scanner(System.in);
        System.out.print("请输入第一个边:");
        int num1 = input.nextInt();
        System.out.print("请输入第二个边:");
        int num2 = input.nextInt();
        System.out.print("请输入第三个边:");
        int num3 = input.nextInt();
        if ((num1 >= 1 && num1 < 100) && (num2 >= 1 && num2 <= 100) && (num3 >= 1 && num3 < 100)) {
            if(num1+num2>num3||num1+num3>num2||num3+num2>num1){
                if(num1==num2&&num2==num3&&num1==num3){
                    System.out.println("这是等边三角形!");
                }else if (num1*num1+num2*num2==num3*num3||num3*num3+num2*num2==num1*num1||num1*num1+num3*num3==num2*num2)
                {
                    System.out.println("这是直角三角形!");
                }else if (num1==num1||num2==num3||num1==num3){
                    System.out.println("这是等腰三角形!");
                }else {
                    System.out.println("这是普通三角形!");
                }
            }else {
                System.out.println("这不是三角形!");
            }
        }else {
            System.out.println("请输入规定数值的数字");
        }
    }
}

swich

练习1:周一跑步,周二、三、四打羽毛球,周五游泳,其它休息

import java.util.Scanner;
public class Main {
    public static void main(String[] args) {
        int today=7;
        switch (today){
            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("其它休息");
        }
    }
}

练习2:输入 2022 年的某个月份和日期,例如 month=4,day=21,经过程序计算,打印出输入的月份和日期是 2022年的第几天:31+28+31+21

import java.util.Scanner;
public class Main {
    public static void main(String[] args) {
        Scanner input = new Scanner(System.in);
        System.out.print("请输入月:");
        int monNum = input.nextInt();
        System.out.print("请输入日:");
        int dayNum = input.nextInt();
        int num=0;
        if(dayNum>=0&dayNum<=31) {
            switch (monNum) {
                case 1:
                    num =  dayNum;
                    System.out.println(+monNum + "月" + dayNum + "日是2022的第" + num + "天");
                    break;
                case 2:
                    if (dayNum >= 0 & dayNum <= 28) {
                        num = 31 + dayNum;
                        System.out.println(+monNum + "月" + dayNum + "日是2022的第" + num + "天");
                        break;
                    } else {
                        System.out.println(+monNum + "月2022只有28天");
                        break;
                    }
                case 3:
                    num = 31 + 28  + dayNum;
                    System.out.println(+monNum + "月" + dayNum + "日是2022的第" + num + "天");
                    break;
                case 4:
                    num = 31 + 28 + 31  + dayNum;
                    System.out.println(+monNum + "月" + dayNum + "日是2022的第" + num + "天");
                    break;
                case 5:
                    num = 31 + 28 + 31 + 30  + dayNum;
                    System.out.println(+monNum + "月" + dayNum + "日是2022的第" + num + "天");
                    break;
                case 6:
                    num = 31 + 28 + 31 + 30 + 31 + dayNum;
                    System.out.println(+monNum + "月" + dayNum + "日是2022的第" + num + "天");
                    break;
                case 7:
                    num = 31 + 28 + 31 + 30 + 31 + 30  + dayNum;
                    System.out.println(+monNum + "月" + dayNum + "日是2022的第" + num + "天");
                    break;
                case 8:
                    num = 31 + 28 + 31 + 30 + 31 + 30 + 31  + dayNum;
                    System.out.println(+monNum + "月" + dayNum + "日是2022的第" + num + "天");
                    break;
                case 9:
                    num = 31 + 28 + 31 + 30 + 31 + 30 + 31 + 31  + dayNum;
                    System.out.println(+monNum + "月" + dayNum + "日是2022的第" + num + "天");
                    break;
                case 10:
                    num = 31 + 28 + 31 + 30 + 31 + 30 + 31 + 31 + 30  + dayNum;
                    System.out.println(+monNum + "月" + dayNum + "日是2022的第" + num + "天");
                    break;
                case 11:
                    num = 31 + 28 + 31 + 30 + 31 + 30 + 31 + 31 + 30 + 31  + dayNum;
                    System.out.println(+monNum + "月" + dayNum + "日是2022的第" + num + "天");
                    break;
                case 12:
                    num = 31 + 28 + 31 + 30 + 31 + 30 + 31 + 31 + 30 + 31 + 30  + dayNum;
                    System.out.println(+monNum + "月" + dayNum + "日是2022的第" + num + "天");
                    break;
                default:
                    System.out.println( "请输入0-12数字");
                    break;
            }

        }
    }
}

java基础练习:循环结构(while、do…while、for、break、continue、return)

while

练习1:输出比i(i=5)小的正整数

import java.util.Scanner;
public class Main {
    public static void main(String[] args) {
        Scanner input = new Scanner(System.in);
        System.out.print("请输入一个数:");
        int num=input.nextInt();
        for (int i=num-1;i>0;i--){
            System.out.println(i);
        }
    }
}
  Java知识库 最新文章
计算距离春节还有多长时间
系统开发系列 之WebService(spring框架+ma
springBoot+Cache(自定义有效时间配置)
SpringBoot整合mybatis实现增删改查、分页查
spring教程
SpringBoot+Vue实现美食交流网站的设计与实
虚拟机内存结构以及虚拟机中销毁和新建对象
SpringMVC---原理
小李同学: Java如何按多个字段分组
打印票据--java
上一篇文章      下一篇文章      查看所有文章
加:2022-02-19 01:00:55  更:2022-02-19 01:01:12 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/24 12:47:50-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码