Java回顾

9 篇文章 0 订阅
8 篇文章 0 订阅

Java基础

第一天:Java概述和基本语法

  • Java历史

    • 1995年5月23日诞生
    • 1998年 Java 2
    • 2004年 Java 5
    • 2014年 Java 8(目前的最新版本)
  • Java的特点

    • 简单自然
    • 面向对象(Object-Oriented)
    • 可移植性(Write Once Run Anywhere)
    • 分布式
    • 多线程
    • 安全健壮
  • Java的工作方式

    • 先编译再解释执行

说明:通过JDK提供的Java编译器(javac)将Java源代码(.java文件)编译成类文件(.class文件,也叫做字节码,这是一种人和计算机都无法识别的中间代码),再通过启动Java虚拟机(java)加载类文件解释执行。

  • Java的术语

    • JDK:Java Developer’s Kit - Java开发者工具
    • JRE:Java Runtime Environment - Java运行时环境
    • JVM:Java Virtual Machine - Java虚拟机
    • API:Application Programming Interface - 应用程序编程接口
  • 开发工具和开发环境

    • Eclipse:开放源代码的、基于Java的可扩展开发平台。
    • IntelliJ:综合的Java 编程环境,被许多开发人员和行业专家誉为最好的IDE。
  • Java程序的结构

public class Hello {
    public static void main(String[] args) {
        System.out.println("Hello, world!");
    }
}

说明:由于Java是面向对象的编程语言,Java程序通常是由类构成的,定义类的关键字是class,后面跟上类的名字,类名后面的左花括号表示类的开始,最后面的右花括号表示类的结束。main方法是可执行程序的入口,它有三个修饰符,分别是public、static和void,方法的开始和结束仍然是用花括号来界定的。方法中的代码是由语句构成的,分号表示一条语句的结束。上面的程序使用了Java API中的System类的out对象的println方法在控制台进行输出。

练习1:输出下面的图案。

******************
*               *
*  欢迎来狼窝     *
*               *
******************
package com.lovoinfo;

public class Hello {

    public static void main(String[] args) {
        System.out.println("*************************");
        System.out.println("*\t\t\t*");
        System.out.println("*\t欢迎来到朗沃\t*");
        System.out.println("*\t\t\t*");
        System.out.println("*************************");
    }
}

练习2:在弹出式对话框上输出上面的图案。

package com.lovoinfo;

import javax.swing.JOptionPane;

public class HelloGUI {

    public static void main(String[] args) {
        String name = JOptionPane.showInputDialog("请输入你的名字: ");
        String message = "****************************\n"
                        + "\n*  欢迎" + name + "来到朗沃  *\n"
                        + "\n****************************";
        JOptionPane.showMessageDialog(null, message);
    }
}
  • 个人练习:
package day0422;

import javax.swing.JOptionPane;


public class Welcome {
    public static void main(String[] args){
        String name = JOptionPane.showInputDialog("请输入你的名字:");
        String message = 
                  "******************** \n"
                + " *                             * \n"
                + " * 欢迎"+name+"来到狼窝  *\n"
                + " *                              *\n"
                + "********************";
        System.out.println("*************************");
        System.out.println("*\t\t\t*");
        System.out.println("*欢迎"+name+"来到狼窝*");
        System.out.println("*\t\t\t*");
        System.out.println("*************************");
        JOptionPane.showMessageDialog(null,message);
        JOptionPane.showMessageDialog
        (null, "******************** \n"
                + " *                             * \n * 欢迎"+name+"来到狼窝  *"
                +"\n"
                + "*                              *\n********************");
    }

}

练习3:两个数做加减乘除的运算。

package com.lovoinfo;

import java.util.Scanner;

public class Calculator {

    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        System.out.print("请输入第一个整数: ");
        int a = sc.nextInt();
        System.out.print("请输入第二个整数: ");
        int b = sc.nextInt();
        System.out.printf("%d+%d=%d\n", a, b, a + b);
        System.out.printf("%d-%d=%d\n", a, b, a - b);
        System.out.printf("%d*%d=%d\n", a, b, a * b);
        System.out.printf("%d/%d=%d\n", a, b, a / b);
        sc.close();
    }
}

练习4:用弹出式对话框完成上面的程序。

package com.lovoinfo;

import javax.swing.JOptionPane;

public class CalculatorGUI {

    public static void main(String[] args) {
        String a = JOptionPane.showInputDialog("请输入第一个数:");
        String b = JOptionPane.showInputDialog("请输入第二个数:");
        int num1 = Integer.parseInt(a);
        int num2 = Integer.parseInt(b);
        String message = String.format(
            "%d+%d=%d", num1, num2, num1 + num2);
        JOptionPane.showMessageDialog(null, message);
    }
}

练习5:将英制单位的英寸转换成公制单位的厘米(1英寸=2.54厘米)。

package com.lovoinfo;

import java.util.Scanner;

public class InchToCentimeter {

    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        System.out.print("请输入英寸: ");
        double a = sc.nextDouble();
        double b = a * 2.54;
        System.out.printf("%.2f 英寸 = %.2f 厘米\n", a, b);
        sc.close();
    }
}
  • 个人练习:
package day0422;

import java.util.Scanner;

import javax.swing.JOptionPane;

public class Length {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        System.out.print("请输入英寸长度:");
        double num1 = sc.nextDouble();
        double num2 = num1 * 2.54;
        System.out.printf("%.2f英寸 = %.2f厘米\n", num1,num2);
        sc.close();
        String a =JOptionPane.showInputDialog("请输入英寸长度");
        double num3 = Double.parseDouble(a);
        double num4 = 2.54;
        JOptionPane.showMessageDialog(null,"公制长度为"+num3*num4 +"厘米");
    }

}

作业:编程实现摄氏温度转换成华氏温度。

package day0422;

import javax.swing.JOptionPane;

public class FahrenheitFree {
    public static void main(String[] args) {
        String C = JOptionPane.showInputDialog("请输入摄氏温度:℃");
        Double num1 = Double.parseDouble(C);
        JOptionPane.showMessageDialog(null, "华氏温度为:"+(num1*1.8+32));

    }

}

第二天:数据类型和常用运算

  • 基本语言元素

    • 关键字:程序中有特殊含义和通途的单词
    • 标识符:给变量、方法、类等起的名字

      • 字母、数字、下划线和$,数字不能开头
      • 大小写敏感(区分大小写)
      • 不能跟关键字相同,不能包含特殊字符
      • 见名知意,驼峰标识
    • 运算符:指定某种运算的特殊符号

      • 算术运算符:+、-、*、/、%
      • 赋值运算符:=、+=、-=、*=、/=、%=、……
      • 关系运算符:>、<、>=、<=、==、!=
      • 短路运算符:&&、||
      • 条件运算符:? :
      • 自增自减运算符:++、–
      • 类型转换运算符:()
      • 其他运算符:逻辑运算符、位运算符、移位运算符、下标运算符、成员运算符等
    • 字面量:程序中不变的部分

      • 引用型字面量:null
      • 布尔型字面量:true和false
      • 字符型字面量:‘q’,‘\n’,‘\t’,‘\ddd’[*]
      • 整型字面量:29,035,0x1d
      • 实型字面量:3.14,.25e2,5.5f
      • 字符串字面量:“Hello, world”
      • 类字面量:String.class,int.class
    • 分隔符:空格、花括号、方括号、圆括号、分号、逗号、冒号等

  • 数据类型

    • 基本类型(primitive type)

      • 整型:byte、short、int、long
      • 实型:float、double
      • 布尔型:boolean
      • 字符型:char
    • 枚举类型(enumeration type):用于定义符号常量。

    • 引用类型(reference type):除了基本数据类型和枚举类型,剩下的类型都是引用类型。
  • 变量和常量

    • 变量:计算机语言中能储存计算结果或能表示值抽象概念。变量可以通过变量名访问。在指令式语言中,变量存储的值通常是可变的,因此称之为变量。
    • 常量:在程序运行时,不会被修改的量。Java中可以使用final关键字定义常量。

练习1:输入两个数找出其中较大的那个数。

  • 老师
package com.lovoinfo;

import java.util.Scanner;

public class FindMax {

    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        System.out.print("请输入两个数: ");
        int a = sc.nextInt();
        int b = sc.nextInt();
        /*
        if(a >= b) {
            System.out.println(a);
        }
        else {
            System.out.println(b);
        }
        */
        System.out.println(a >= b? a : b);
        sc.close();
    }
}
  • 自己
package day0422;

import java.util.Scanner;

public class GitMax {

    public static void main(String[] args) {

        Scanner sc = new Scanner(System.in);
        System.out.println("请输入两个整数");
        int a = sc.nextInt();
        int b = sc.nextInt();

        if (a >= b) {
            System.out.println("最大的数是:"+a);
        }
        else{
            System.out.println("最大的数是:"+b);
        }
        sc.close();
    }

}

练习2:输入身高(cm)和体重(kg)判断身材是否正常。判断标准"身高-110>=体重"认为是正常的。

package com.lovoinfo;

import java.util.Scanner;

public class AreYouFat {

    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        System.out.print("请输入你的名字: ");
        String name = sc.nextLine();
        System.out.print("请输入你的身高: ");
        int height = sc.nextInt();
        System.out.print("请输入你的体重: ");
        int weight = sc.nextInt();
        /*
        if(height - 110 >= weight) {
            System.out.println(name + "的身材正常!");
        }
        else {
            System.out.println(name + "是个胖子!");
        }
        */
        System.out.println(name +
            (height - 100 >= weight? "身材正常!" : "是个胖子!"));
        sc.close();
    }
}

练习3:输入一个年份,判断是不是闰年。

package com.lovoinfo;

import java.util.Scanner;

public class IsLeapYear {

    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        System.out.print("请输入一个年份: ");
        int year = sc.nextInt();
        if(year % 4 == 0 && year % 100 != 0 || year % 400 == 0) {
            System.out.println(year + "是闰年");
        }
        else {
            System.out.println(year + "不是闰年");
        }
        sc.close();
    }
}

练习4:输入三个整数,按从小到大的顺序输出。

package com.lovo;

import java.util.Scanner;

public class SortThreeNumber {

    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        System.out.print("请输入三个数: ");
        int a = sc.nextInt();
        int b = sc.nextInt();
        int c = sc.nextInt();
        if(a > b) {
            int temp = a;
            a = b;
            b = temp;
        }
        if(a > c) {
            int temp = a;
            a = c;
            c = temp;
        }
        if(b > c) {
            int temp = b;
            b = c;
            c = temp;
        }
        System.out.printf("%d\t%d\t%d\n", a, b, c);
        sc.close();
    }
}

作业:输入三个整数,输出其中最大的数。

package day0422;

import java.util.Scanner;

public class GetMaxThreeNumber {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        System.out.print("请输入三个整数: (用空格或者回车隔开)");
        int a = sc.nextInt();
        int b = sc.nextInt();
        int c = sc.nextInt();
        int temp = a > b ? a : b;
        int max = temp > c ? temp : c;
        System.out.println("最大值为:"+max);
        sc.close();

    }

}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值