#1.1 第一个Java程序java
package my.hava.javabasis.lesson; /** * Created by zhanpeng on 2016/10/10. */ public class Lesson1_1 { public static void main(String [] args) { System.out.println("Hello World"); } }
程序输出编程
Hello World Process finished with exit code 0
#1.2 用变量作计算 ##1.2.1 读输入 ###如何去读架构
package my.hava.javabasis.lesson; import java.util.Scanner; /** * Created by zhanpeng on 2016/10/10. */ public class Lesson1_2 { public static void main(String [] args) { System.out.println("中文"); //读取用户输入 Scanner in = new Scanner(System.in); System.out.println(in.nextLine()); } }
###课堂题目 每次输入的内容只有在按下回车(Enter)键以后才会被程序读到。
A.√
B.×
正确答案: Aapp
package my.hava.javabasis.lesson; import java.util.Scanner; /** * Created by zhanpeng on 2016/10/10. */ public class Lesson1_2 { public static void main(String [] args) { System.out.println("中文"); //读取用户输入 Scanner in = new Scanner(System.in); System.out.println("echo:" + in.nextLine()); System.out.println(2+3+"=2+3=" + (2+3)); } }
程序输出less
中文 hello world echo:hello world 5=2+3=5 Process finished with exit code 0
##1.2.2 变量测试
package my.hava.javabasis.lesson1; import java.util.Scanner; /** * Created by zhanpeng on 2016/10/10. */ public class Lesson1_2 { public static void main(String [] args) { System.out.println("中文"); //读取用户输入 Scanner in = new Scanner(System.in); // System.out.println("echo:" + in.nextLine()); int price = in.nextInt(); System.out.println("100-" + price + "=" + (100 - price)); } }
输出ui
中文 33 100-33=67 Process finished with exit code 0
###题目 int price;
这句定义了一个变量
A.√
B.×
正确答案: A 你选对了code
###变量定义对象
以下为例子图片
int price; int amount; int price,amount;
###变量的名称
###Java保留字
###变量类型
int price = 0;
##1.2.3 赋值
###异常
package my.hava.javabasis.lesson1; import java.util.Scanner; /** * Created by zhanpeng on 2016/10/10. */ public class Lesson1_2 { public static void main(String [] args) { System.out.println("中文"); //读取用户输入 Scanner in = new Scanner(System.in); // System.out.println("echo:" + in.nextLine()); //变量初始化 int price = 0, amount = 0; System.out.println(price); price = in.nextInt(); System.out.println("100-" + price + "=" + (100 - price)); } }
输出异常
中文 0 price Exception in thread "main" java.util.InputMismatchException at java.util.Scanner.throwFor(Scanner.java:909) at java.util.Scanner.next(Scanner.java:1530) at java.util.Scanner.nextInt(Scanner.java:2160) at java.util.Scanner.nextInt(Scanner.java:2119) at my.hava.javabasis.lesson1.Lesson1_2.main(Lesson1_2.java:18) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:606) at com.intellij.rt.execution.application.AppMain.main(AppMain.java:144) Process finished with exit code 1
###代码
package my.hava.javabasis.lesson1; import java.util.Scanner; /** * Created by zhanpeng on 2016/10/10. */ public class Lesson1_2 { public static void main(String [] args) { System.out.println("你好"); //读取用户输入 Scanner in = new Scanner(System.in); // System.out.println("echo:" + in.nextLine()); //变量初始化 int amount = 100; int price = 0; System.out.println("[amount]:" + amount); System.out.println("[price]:" + price); price = in.nextInt(); System.out.println(amount + "-" + price + "=" + (amount - price)); } }
###题目 当amount的值为100,price的值为20,如下哪种写法能输出:100-20=80
A.System.out.println("amount-price="+amount-price);
B.System.out.println(amount+"-"+price+"="+(amount-price));
C.System.out.println("amount-"+price+"="+amount-price);
D.System.out.println(amount-price=(amount-price)); 正确答案: B
###程序
package my.hava.javabasis.lesson1; import java.util.Scanner; /** * Created by zhanpeng on 2016/10/10. */ public class Lesson1_2 { public static void main(String [] args) { System.out.println("你好"); //读取用户输入 Scanner in = new Scanner(System.in); // System.out.println("echo:" + in.nextLine()); //变量初始化 // final int amount = 100; int amount = 100; int price = 0; System.out.println("[amount]:" + amount); System.out.println("[price]:" + price); System.out.println("请输入票面:"); amount = in.nextInt(); System.out.println("请输入金额:"); price = in.nextInt(); System.out.println(amount + "-" + price + "=" + (amount - price)); } }
输出结果
你好 [amount]:100 [price]:0 请输入票面: 100 请输入金额: 50 100-50=50 Process finished with exit code 0
##变量课件 ###读输入
Scanner in = new Scanner(System.in); System.out.println(in.nextLine());
###运行
###读入一行文字
System.out.println(in.nextLine());
###字符串的+
System.out.println("Hello" + " world.");//Hello world. System.out.println("Hello" + 2);//Hello2 System.out.println("Hello" + 2 + 3);//Hello5 System.out.println(2 + 3 + "Hello");//5Hello
###try
###找零计算
Scanner in = new Scanner(System.in); int price = 0; price = in.nextInt(); int change = 100 - price; System.out.println(change);
###变量
int price = 0;
###变量定义
以下为例子
int price; int amount; int price,amount;
###变量的名字
###Java保留字
###quiz
###赋值和初始化
=
是一个赋值运算符,表示将=
右边的值赋给左边的变量。###赋值 和数学不一样,a=b在数学中表示关系,即a和b的值同样;而在Java中,a=b表示要求计算机作一个动做:将b的值赋给a。关系是静态的,而动做是动态的。在数学中,a=b与b=a是等价的,而在Java中,二者的意思彻底相反
###初始化 当赋值发生在定义变量的时候,就像程序中的第7行那样,就是变量的初始化。虽然Java语言并无强制要求全部的变量都在定义的地方作初始化,可是要求全部的变量在第一次被使用(出如今赋值运算符的右边)以前被赋值
###变量初始化
###插入
回答 price == 0,amount == 100,age == 0
###读整数
Exception in thread "main" java.util.InputMismatchException at java.util.Scanner.throwFor(Scanner.java:864) at java.util.Scanner.next(Scanner.java:1485) at java.util.Scanner.nextInt(Scanner.java:2117) at java.util.Scanner.nextInt(Scanner.java:2076) at my.hava.javabasis.lesson1.Lesson1_2.main(Lesson1_2.java:22) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at com.intellij.rt.execution.application.AppMain.main(AppMain.java:147)
###表达式
###try
###变量类型
###常量
###final
###try
###tips
#1.3 表达式(浮点数、优先级和类型转换) ##浮点数 ###身高5尺7寸?
###计算身高的程序 - 问题代码
package my.hava.javabasis.lesson1; import java.util.Scanner; /** * Created by yanfa on 2016/10/10. */ public class Lesson1_3 { public static void main(String [] args){ int foot; //英尺 int inch; //英寸 Scanner in = new Scanner(System.in); System.out.println("请输入身高:"); System.out.print("英尺:"); foot = in.nextInt(); System.out.print("英寸:"); inch = in.nextInt(); double result = (foot + inch/12) * 0.3048; System.out.println("身高:" + result); } }
错误输出
请输入身高: 英尺:5 英寸:7 身高:1.524
###为何是1.524
###课堂测试 在Java中10/3的结果是?
正确答案:3
###计算身高的程序 - 正确代码 **注意:**在作除法的时候先进行强制类型转换
package my.hava.javabasis.lesson1; import java.util.Scanner; /** * Created by yanfa on 2016/10/10. */ public class Lesson1_3 { public static void main(String [] args){ int foot; //英尺 int inch; //英寸 Scanner in = new Scanner(System.in); System.out.println("请输入身高:"); System.out.print("英尺:"); foot = in.nextInt(); System.out.print("英寸:"); inch = in.nextInt(); double result = (foot + (double)inch/12) * 0.3048; System.out.println("身高:" + result); } }
输出结果
请输入身高: 英尺:5 英寸:7 身高:1.7018
###浮点数
###程序改进
###double
双精度浮点数
的第一个单词,人们用来表示浮点数类型###浮点运算的精度
0.09999999999999987
###整数
###讨论
**回答:**正确,Java程序会自动从低精度转换成高精度。
###随堂
###单目运算符
int a = 10; int b = -20; System.out.println(a * -b);
###结合关系
result = a = b = 3 + c; result = 2; result = (result = result * 2) * 6 * (result = 3 + result); //上面的式子先计算了左边的result=,获得result=4,而后在计算右边的result=,获得result=7。则最终结果是168
###插入
###强制类型转换
###随堂测试 如下哪句能把浮点数转换成整数?
A. (int)12.4
B. int(12.4)
C. int 12.4
D. 12.4=int 正确答案: A 你选对了
###强制类型转换
int i = 32 / 3.0; int i = (int)(32 / 3.0);
###身高?
###强制类型转换
double b = 10.3; int a = (int)b;
###强制类型转换
double a = 1.0; double b = 2.0; int i = (int)a /b;//int i = (int)(a/b);
double a = 1.0; double b = 2.0; double d = (double) (a /b );