2017年2月24号 星期五
Java基础语法
1、算术运算符
package cn.bdqn.test;
/**
* 运算符的练习
* @author alex
*
* 2017-2-24
* 上午8:46:45
* You can either travel or read,but either your body or soul must be on the way
* TODO
*/
public class OperatorTest01 {
public static void main(String[] args) {
// 老师举例讲解+的使用
System.out.println("脑筋急转弯的值:" + 5 + 5); // 字符串连接
System.out.println("脑筋急转弯的值:+ 5" + 5); // 字符串连接
System.out.println("脑筋急转弯的值:" + (5 + 5));// 字符串与()内计算后的结果连接
int num1 = 10;
int num2 = 5;
int a = num1 / num2; // 取整
int b = num1 % num2; // 取余
System.out.println("num1 / num2取整的值:" + a);
System.out.println("num1 % num2取余的值:" + b);
/**
* ++:自身加1
* 01.++在前:先自身加1,再执行操作
* 02.++在后:先执行操作,再自身加1
* --:自身减1
*/
num1++;// 本行为10,下行为11
num2--;// 本行为5,下行为4
System.out.println(++num1); // 12
System.out.println(--num2); // 3
System.out.println(num1++);
System.out.println(num1);
}
}
2、自动类型转换和强制类型转换
package cn.bdqn.test;
public class ForNote {
public static void main(String[] args) {
/**
* 某班第一次Java考试平均分81.29,
* 第二次比第一次多2分,
* 计算第二次考试平均分?
*/
double fAvg = 81.29;
double sAvg; // 定义一个第二次的平均分
int rise = 2; // 增长的分数
/**
* 自动类型转换规则
* 01.如果一个操作数是double,则整个表达式都是double
* 02.操作数 要相互兼容! 数值类型的数据
* 03.目标类型 大于 (取值范围)源类型
*/
sAvg = fAvg + rise;
System.out.println("第二次的平均分=" + sAvg);
System.out.println("******************************");
System.out.println("计算之和:" + 5 + 5); // 55
System.out.println(5 + 5 + "计算之和"); // 10
System.out.println("******************************");
/**
* 强制类型转换: 把大的数据类型 转换成 小的数据类型!
*/
int before = 20;
double after = 5.5;
// 大蛋糕 装进 小盒子??? 肯定装不下!
// int now = (int) (before + after);
int now = before + (int) after;
System.out.println("now的值:" + now);
float s = (float) 50.5;
float s1 = 50.5f;
float s2 = 50.5F;
}
}
3、练习(实现数字加密)
自己写的代码如下:
package cn.bdqn.test;
/**
* 实现数字加密,加密规则:
* 加密结果=(整数*10+5)/2+3.14159
* 加密结果仍为一个整数
*/
import java.util.Scanner;
public class TranslateTest01 {
public static void main(String[] args) {
// 让用户输入整数
Scanner input = new Scanner(System.in);
System.out.print("请输入一个整数:");
int num = input.nextInt();
// 获取加密数据
int secretnum = (int) ((num * 10 + 5) / 2 + 3.14159);
System.out.print(secretnum);
}
}
4、关系运算符
package cn.bdqn.test;
public class ForNote {
public static void main(String[] args) {
/**
* ==: 基本数据类型再做比较的时候是比较的值!
* !=: 不等于
*/
int a = 5;
int b = 5;
System.out.println("a == b:" + (a == b));
System.out.println("a != b:" + (a != b));
System.out.println("a > b:" + (a > b));
System.out.println("a < b:" + (a < b));
System.out.println("a < =b:" + (a <= b));
System.out.println("a > =b:" + (a >= b));
}
}
5、练习(张三李四成绩比较)
老师写的代码:
package cn.bdqn.test;
import java.util.Scanner;
public class ForNote {
/**
* 从控制台输入张三同学的成绩,
* 与李四的成绩(80分)比较,
* 输出“张三的成绩比李四的成绩高吗?“ 的判断结果
*/
public static void main(String[] args) {
// 创建Scanner对象
Scanner scanner = new Scanner(System.in);
System.out.println("请您输入张三的成绩:");
double zhangScore = scanner.nextDouble(); // 获取张三的成绩
double liScore = 80;
// 输出 张三的成绩比李四的成绩高吗 是比较??使用关系运算符
boolean result = (zhangScore > liScore);
System.out.println("张三的成绩比李四的成绩高==" + result);
}
}
6、练习(实现购物小系统)
自己写的代码:在老师要求基础上加了一个输入3次的小循环,但是离自己想要的需求还有差距
后期待解决问题:如何实现循环输入,最后同时将3次输入的商品信息同时打在一张消费单上?
代码如下:
package cn.bdqn.test;
import java.util.Scanner;
/**
* 需求:结算时购物小票
* 计算此次购物获得的会员积分
* @author alex
*
* 2017-2-24
* 上午10:13:18
* You can either travel or read,but either your body or soul must be on the way
* TODO
*/
public class PayTest {
public static void main(String[] args) {
System.out.println("***********欢迎光临本店!************");
Scanner input = new Scanner(System.in);
// 循环输入3种商品
for (int i = 0; i <= 2; i++) {
// 提示顾客输入并获取购买物品名称
System.out.println("请您输入购买物品的名称:");
String name = input.next();
// 提示顾客输入并获取购买物品单价
System.out.println("请您输入购买物品的单价:");
double price = input.nextDouble();
// 提示顾客输入并获取购买物品个数
System.out.println("请您输入购买该物品的个数:");
int num = input.nextInt();
// 提示顾客输入并获取折扣:8折
System.out.println("折扣是:");
double rebate = input.nextDouble();
// 提示顾客输入并获取实际交费金额
System.out.println("请输入您的实际交费金额:");
double pay = input.nextDouble();
// 计算该商品消费总金额(折扣前)
double amount = price * num;
// 输出整体的一行购物信息
System.out.println("*************消费单************");
System.out.println("购买物品\t单价\t个数\t金额");
System.out.println(name + "\t" + "¥" + price + "\t" + num + "\t"
+ "¥" + amount + "\n");
// 输出折扣:
System.out.println("折扣:\t" + rebate);
// 计算该商品折扣后的消费总金额
double consumption = amount * 0.8;
System.out.println("消费总金额\t" + "¥" + consumption);
// 输出实际交费金额
System.out.println("实际交费\t\t" + "¥" + pay);
// 找钱=实际交费金额-计算折扣后的消费总金额
double change = pay - consumption;
System.out.println("找钱\t\t" + "¥" + change);
// 本次购物所获得的积分是:(规则为实际消费100元积1分)
double point = consumption / 100;
System.out.println("本次购物所获的积分是:\t" + point);
}
}
}
7、练习:会员卡号各位数字之和及判断是否幸运顾客
自己写的代码:(判断暂时用boolean,因为老师还没讲到if)
package cn.bdqn.test;
/**
* 会员卡号各位数字之和
* 判断是否幸运顾客
* 规则;各位数字之和是否大于20
*/
import java.util.Scanner;
public class CardNumber {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
// 提示用户输入4位会员卡号:
System.out.println("请输入您的4位会员卡号:");
// 得到各位数字
int num = input.nextInt();
int geNum = num % 10;
int shiNum = num / 10 % 10;
int baiNum = num / 100 % 10;
int qianNum = num / 1000;
// 计算各位数字之和,并输出
int sum = geNum + shiNum + baiNum + qianNum;
System.out.println("会员卡号" + num + "各位之和:" + sum);
// 判断是否为幸运顾客,并输出结果
boolean result = sum > 20;
System.out.println("是幸运客户吗?" + result);
}
}
8、后期待解决问题:
练习(实现购物小系统)如何实现循环输入3种商品购物信息,最后同时将3次输入的商品信息同时打在一张消费单上?
9、新学会大招:快捷键ctrl+1
使用scanner方法时:
快捷键ctrl+1:可补全前面所需定义的变量;
双击第一项:提示输入
输入变量名即可:
10、作业:
视频:看完第一部分(做完DVD项目)-----》亚历山大!!!!!努力!
题目:每天至少60道,本周争取完成500道!(目前377道)
老师辛苦了!
***********************我是今天偶尔华丽一次的分割线**********************
PS:今天是彭彭的生日。我在这里祝福她生日快乐!学业有成!生活幸福快乐!