Java回顾,
Java回顾,
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();
}
}
相关文章
- 暂无相关文章
用户点评