第一天学习
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)启动JVM加载类文件解释执行。
-
Java的术语
- JDK:Java Developer's Kit - Java开发者工具
- JRE:Java Runtime Environment - Java运行时环境
- JVM:Java Virtual Machine - Java虚拟机
- API:Application Programming Interface - 应用程序编程接口
-
开发工具和开发环境
- Eclipse
- IntelliJ
-
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.flagwu;
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.flagwu;
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);
}
}
练习3:两个数做加减乘除的运算。
package com.flagwu;
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.flagwu;
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.flagwu;
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();
}
}
作业1:编程实现摄氏温度转换成华氏温度。
package com.flagwu;
import java.util.Scanner;
public class Temperature {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.print("请输入摄氏度:");
double a = sc.nextDouble();
double b = a * 33.8;
System.out.printf("%.1f摄氏度=%.1f华氏度",a,b);
sc.close();
}
}
数据类型和常用运算##
- 关键字、标识符、运算符、字面量和分隔符
- 数据类型
- 变量和常量
- 标识符的命名
- 运算符的使用
练习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);
}
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 + "是个胖子!");
}
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();
}
}
作业2:输入三个整数,输出其中最大的数。
package com.flagwu;
import java.util.Scanner;
public class FindMax2 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("请输入三个数字:");
int a = sc.nextInt();
int b = sc.nextInt();
int c = sc.nextInt();
int max;
if(a>b){
max=a;
}
else{
max=b;
}
if(max>c){
System.out.println(max);
}
}
}
package com.flagwu;
import java.util.Scanner;
public class FindMax2 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("请输入三个数字:");
int a = sc.nextInt();
int b = sc.nextInt();
int c = sc.nextInt();
int max = a>b?a:b;
max= max>c?max:c;
System.out.print(max);
}
}