--------------------------知识点1---------------------------------
/*
需求:请输出一个4行5列的星星()图案。
结果:
*****
*****
*****
*****
/
class ForForDemo{
public static void main(String [] args){
for (int x = 0;x < 4; x++){
for (int y = 0; y < 5; y++ ){
System.out.print("");
}
System.out.println();
}
}
}
--------------------------知识点2---------------------------------
/
需求:请输出一个4行5列的星星()图案。
结果:
*
**
***
****
*****
/
class ForForDemo2{
public static void main(String [] args){
for (int x = 0;x < 5; x++){
for (int y = 0; y < x+1; y++ ){
System.out.print("");
}
System.out.println();
}
}
}
--------------------------知识点3---------------------------------
/
九九乘法表
11=1
12=2 22=4
/
class ForForDemo3{
public static void main(String [] args){
for (int x = 1;x <= 9; x++){
for (int y = 1; y <= x; y++ ){
System.out.print(y+""+x+"="+(xy));
/System.out.print("");
System.out.print(x);
System.out.print("=");
System.out.print(xy);/
System.out.print("\t");
}
System.out.println();
}
}
}
--------------------------知识点4---------------------------------
/*
switch语句格式:
switch(表达式) {
case 值1:
语句体1;
break;
case 值2:
语句体2;
break;
…
default:
语句体n+1;
break;
}
格式的解释:
switch:表示选择结构
表达式:这个地方的取值是限定的
byte,short,int,char
JDK5以后可以是枚举
JDK7以后可以是字符串
break 表示中断,可以结束switch语句。
default: 当所有的值都和表达式不匹配的时候,就执行defaule控制的
的语句。
面试题:
byte可以作为switch的表达式吗?yes
long可以作为switch的表达式吗?no
String可以作为switch的表达式吗?yes
案例:键盘录入一个数据,根据数据,输出对应的星期
分析:
1.键盘录入,使用Scanner实现
2.判断我们既可以使用if语句,也可以使用switch语句。
注意:
A.遇到做左大括号缩进一个tab的位置。
B.关联不是很大的语句间空行。
*/
import java.util.Scanner;
class SwitchDemo{
public static void main(String [] args){
// 创建键盘录入对象
Scanner sc = new Scanner(System.in);
// 控制键盘录入数据
System.out.println(“请输入一个数据(1-7):”);
int week = sc.nextInt();
switch (week){
case 1:
System.out.println(“星期一”);
break;
case 2:
System.out.println(“星期二”);
break;
case 3:
System.out.println(“星期三”);
break;
case 4:
System.out.println(“星期四”);
break;
case 5:
System.out.println(“星期五”);
break;
case 6:
System.out.println(“星期六”);
break;
case 7:
System.out.println(“星期日”);
break;
default :
System.out.println(“您输入的有错误!”);
break;
}
}
}
--------------------------知识点6---------------------------------
/*
switch 语句的注意事项:
A:case后面只能是常量,不能是变量,而且,多个case后的值不能相同。
B:default可以省略但是不建议,因为他对不正常情况进行处理。
C:break可以省略,结果可能不正确,会出现
case穿透,建议不要省略。最后的break可以省略。
D:可以在任意位置,但是最好放在最后。
E:switch的结束条件:
遇到break;
执行到最后;
*/
import java.util.Scanner;
class SwitchDemo2 {
public static void main(String [] args){
// 创建键盘录入对象
Scanner sc = new Scanner(System.in);
// 控制键盘录入数据
System.out.println(“请输入一个数据(1-7):”);
int week = sc.nextInt();
switch (week){
case 1:
System.out.println(“星期一”);
break;
case 2:
System.out.println(“星期二”);
break;
case 3:
System.out.println(“星期三”);
break;
case 4:
System.out.println(“星期四”);
break;
case 5:
System.out.println(“星期五”);
break;
case 6:
System.out.println(“星期六”);
break;
case 7:
System.out.println(“星期日”);
break;
default :
System.out.println(“您输入的有错误!”);
break;
}
}
}
--------------------------知识点7---------------------------------
/*
模拟单项选择题。
分析:
1.出一个选择题,然后供你选择
2.键盘入录选择的数据。
3.根据选择来给出你的选择结论。
*/
import java.util.Scanner;
class SwitchTest2{
public static void main(String [] args){
// 由于目前学习键盘没法入录一个‘A’,‘B’
// 使用65 ,66这样的代替
// 将来我们获取到这样的值后,强制转换成字符类型。
System.out.println("下面的几个人你最爱谁?");
System.out.println("65 林青霞");
System.out.println("66 张曼玉");
System.out.println("67 刘德华");
System.out.println("68 王力宏");
// 创建接受对象
Scanner sc = new Scanner(System.in);
System.out.println("请输入你的选择:");
int choiceNumber = sc.nextInt();
// 进行switch选择判断
switch ((char)choiceNumber){
case 'A':
System.out.println("你最喜欢的人是林青霞");
break;
case 'B':
System.out.println("你最喜欢的人是张曼玉");
break;
case 'C':
System.out.println("你最喜欢的人是刘德华");
break;
case 'D':
System.out.println("你最喜欢的人是王力宏");
break;
default:
System.out.println("输入错误!");
break;
}
}
}
--------------------------知识点8---------------------------------
/*
根据你键盘录入的字符串,判断是否满足要求的,如果有就输出。
否则,提示错误。
String s = sc.nextLine();
if和switch的区别:
if语句使用场景:
针对结果是boolean类型的判断
针对一个范围的判断
针对几个常量值的判断
switch语句使用场景:
针对几个常量值的判断
*/
import java.util.Scanner;
class SwitchTest3{
public static void main(String [] args){
// 创建键盘录入对象
Scanner sc = new Scanner(System.in);
// 接收键盘录入数据
System.out.println(“请输入字符串:”);
String word = sc.nextLine();
//switch语句判断
switch(word){
case "abcd":
System.out.println("输入正确");
break;
default:
System.out.println("输入错误");
break;
}
}
}
--------------------------知识点9---------------------------------
/*
continue :继续
使用场景:
循环中,离开此场景无意义。
测试:找到和break的区别:
break:跳出单层循环
continue:跳出一次循环,进入下次循环
*/
class ContinueDemo{
public static void main(String [] args){
for(int x=0;x<10;x++ ){
if(x==6){
//break;
continue;
}
System.out.println(x);
}
}
}
--------------------------知识点10---------------------------------
/*
控制跳转语句:
continue:继续
return:返回
break:中断的意思
使用场景:
A.switch语句中
B.循环语句中
(循环语句中加入了if判断的情况)
注意:离开的上面两个场景;毫无意义
如何使用:
1.跳转单层循环
2.跳出多层循环
要实现这个效果,就必须知道一个标签名。
格式:
标签名 :语句
*/
class BreakDemo{
public static void main(String [] args){
// 在 switch 或 loop 外部中断
// break;
for (int x=0;x<10;x++){
if (x ==3){
break;
}
System.out.println(“helloworld”);
}
System.out.println(“over”);
System.out.println("-----------------");
wc:for(int x= 0;x<4;x++){
nc:for(int y=0;y<3;y++){
if(y == 2){
break wc;
}
System.out.print("*");
}
System.out.println();
}
}
}
--------------------------知识点11---------------------------------
/*
需求:小芳的妈妈每天给她2.5元钱,她都会存起来,但是,
每当这一天是存钱的第5天或者5的倍数的话,她都会花去6元钱,
请问,经过多少天,小芳才可以存到100元钱。
/
class Test{
public static void main(String [] args){
float sum = 0;
int SuccessTime =1;
for(int day = 1;;day++){
sum += 2.5;
if(day%5==0){
sum = sum-6;
System.out.println(“第”+day+“天小芳花了6元!”);
}
if (sum >= 100){
SuccessTime = day;
System.out.println(“经过”+SuccessTime+“天小芳存到了100元钱!”);
break;
}
System.out.print(day);
System.out.print(" ");
System.out.println(sum);
}
}
}
--------------------------知识点12---------------------------------
/
需求:小芳的妈妈每天给她2.5元钱,她都会存起来,但是,
每当这一天是存钱的第5天或者5的倍数的话,她都会花去6元钱,
请问,经过多少天,小芳才可以存到100元钱。
分析:
A:小芳的妈妈每天给她2.5元钱
double dayMoney = 2.5;
B:她都会存起来
double daySum = 0;
C:从第一天开始存储
int dayCount = 1;
D:经过多少天,小芳才可以存到100元钱。
double result = 100;
E:这一天是存钱的第5天或者5的倍数的话,她都会花去6元钱,
说明要判断dayCount的值,如果对5整除就减去6元钱。
daySum -= 6;
由此还隐含了一个问题,就是如果不是5的倍数天的话,钱要累加
daySum += dayMoney;
F:因为不知道是多少天,所以我用死循环,一旦超过100元我就退出循环。
*/
class Test2 {
public static void main(String[] args) {
//每天要存储的钱是2.5元
double dayMoney = 2.5;
//存钱的初始化值是0
double daySum = 0;
//从第一天开始存储
int dayCount = 1;
//最终存储不小于100就不存储了
int result = 100;
//因为不知道是多少天,所以我用死循环,
while(true) {
//累加钱
daySum += dayMoney;
//一旦超过100元我就退出循环。
if(daySum >= result) {
System.out.println("共花了"+dayCount+"天存储了100元");
break;
}
if(dayCount%5 == 0) {
//花去6元钱
daySum -= 6;
System.out.println("第"+dayCount+"天花了6元钱");
}
//天数变化
dayCount++;
}
}
}