第一天学习java概述和基本语法Java历史
1995年5月23日 诞生1998年 Java 22004年 Java 52014年 目前的最新版本 Java 8Java的特点
简单自然面向对象(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 - 应用程序编程接口开发工具和开发环境
EclipseIntelliJJava程序的结构
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);}}