千峰培训Day03-java基础学习:for循环,switch,if

课程回顾:

变量
格式:数据类型 变量名[=值];
变量必须先声明再赋值,才能使用

运算符:
1、算术运算符
2、逻辑运算符
3、关系运算符
4、赋值运算符
5、位运算符
6、字符串连接运算符
7、三目运算符

今日内容:
程序的结构:
1、顺序结构:从上到下,逐行进行
2、分支结构:有选择性的执行代码
 if-else
 switch
3、循环结构:满足某个条件,就一直执行代码

从键盘输入数据的步骤:
1、import java.util.Scanner;//导包,在文件的最上端
2、在main方法内部
Scanner scn=new Scanner(System.in);//创建对象
int score=scn.nextInt();//获取输入的数字

分支结构:实现程序流程控制,根据一定的条件有选择的执行某些代码
1、if-else
格式一:if(boolean类型表达式){代码块},如果……
当boolean类型表达式为true就会执行指定的代码块
格式二:if(boolean类型表达式){代码块}else{代码块},如果……否则……
如果条件满足就执行if语句的代码,否则就执行else的代码
格式三:if(boolean型表达式){代码块}else if(boolean型表达式){代码块}……else{代码块}
多条件满足其一

完整格式:if(boolean型表达式){代码块}[else if(boolean型表达式){代码块}……][else{代码块}]
if可以单独使用
else if和else都不可以单独使用,必须跟在if的后面

//练习:从键盘输入年龄
如果<18,输出,未成年
18-22:青年
23-40:中年
40-100:老年
否则:未知

if语句的嵌套使用:
格式:
if(boolean类型表达式)
{
 ……
 if(boolean类型表达式){……}
}

练习:int no,学号,如果学号为8位数,那么输出恭喜你成为千锋的一员,否就输出,很遗憾,学号不正确
请使用2种手段完成编程

练习:int age年龄,char sex性别
如果男
验证年龄
如果年龄在18,28之间,输出:帅小伙
如果女
验证年龄,为18,输出:女大十八变
年龄为20,30输出:魅力女生
否则:女孩子

2、switch
格式:
switch(exp)
{
 case 值1:代码块;break;
 case 值2:代码块;break;
 ……
 case 值n:代码块;break;
 [default : 代码块;break;]
}
exp:byte、short、char、int 1.6之后支持枚举(enum) 1.7之后支持String
值:常量值
default:可有可无,表示所有case的值都没有匹配上,就会执行default

简单计算器
int num1=10,num2=6;
char fh;//符号
从键盘输入符号
使用switch输出结果

next().charAt(0);

//闰年口诀:四年一润,百年不润,四百年再润,二月润年29天,平年28天
润年条件:
1、四年一润,百年不润
2、四百年再润
/*
  变量,sex,age
  使用if-else验证性别
  如果:女
  使用switch验证age
  年龄按照30划分:
  0(青春),1(成熟),2(暮年),3(长寿)
  如果:男
  年龄按照50划分
  0(成年),1(老年),2(长寿)
  */

循环结构:
条件成立的话就重复去执行一段代码
 1、for语句
  格式:for(表达式1;表达式2;表达式3)
    {
     循环体;
    }
  表达式1:循环变量初始化
  表达式2:循环条件验证(boolean型表达式)
  表达式3:循环变量改变
  循环体:重复执行的代码块

2、while语句
 3、do/while语句

//输出10以内的偶数

素数(质数)

明日内容
while
do/while
循环嵌套
特殊的for语句
特殊循环语句控制

1、
从键盘输入成绩,现在的成绩都是百分制
根据成绩输出等级
A:>=90
B:>=80
C:>=70
D:>=60
E:>=0

import java.util.Scanner;
class zuoye01
{
 public static void main(String[] args)
 {
  //声明一个导包变量
  Scanner scan = new Scanner(System.in);
  int score = scan.nextInt();
  if(score < 60)
  {
      System.out.println("你的成绩等级为:E");
  }
  else if(score < 70)
  {
      System.out.println("你的成绩等级为:D");
  }
  else if(score < 80)
  {
      System.out.println("你的成绩等级为:C");
  }
  else if(score <90)
  {
      System.out.println("你的成绩等级为:B");
  }
  else if(score <100)
  {
   System.out.println("你的成绩等级为:A");
  }
  else
  {
      System.out.println("输入的成绩有问题,请重新输入");
  }
  
  
 }
}

2、请完成对工资的分级
工资范围:
工资
>20000:哇,高薪哟
>10000:呀,不错哟
>5000:哦,能生存啦
>2000:嗨,要吃泡面哟
其他:只能喝水了
1)、使用三目运算符的嵌套
2)、请使用if-else
3)、请使用switch
import java.util.Scanner;
class zuoye02
{
 public static void main(String[] args)
 {
  //声明一个导包变量
  Scanner scan = new Scanner(System.in);
  int gj = scan.nextInt();//接收键盘输入的数据

/**       if(gj > 20000)
    {
     System.out.println("哇,高薪哟");
    }
    else if(gj > 10000)
    {
        System.out.println("呀,不错哟");
    }
    else if(gj > 5000)
    {
     System.out.println("哦,能生存啦");

}
    else if(gj > 2000)
    {
        System.out.println("嗨,要吃泡面哟");
    }
    else
    {
     System.out.println("只能喝白开水了");
    }
*/     
 /** 
       String a;
       if(gj < 5000)
    {
           a = gj > 2000? "嗨,要吃泡面哟" : "只能喝水了";
     System.out.println(a);
    }
    else if(gj < 20000)
    {
     a = gj > 10000 ? "呀,不错哟":"哦,能生存了";
     System.out.println(a);
    }
    else
    {
     System.out.println("哇,高薪哟");
    }
*/

if(gj >10000)
  {
     int a = gj/10000;
     switch(a)
     {
        case 1 :System.out.println("呀,不错哟");break;
     case 2 :
     case 3 :
     case 4 :
              case 5 :
     case 6 :
     case 7 :
     case 8 :
              case 9 :
     default:System.out.println("哇,高薪哟");
     }
  }
     else if(gj > 2000)
   {
        int b = gj/1000;
     switch(b)
     {
       case 2:
    case 3:
    case 4:System.out.println("嗨,要吃泡面啦");break;
    case 5:
    case 6:
    case 7:
    case 8:
    case 9:System.out.println("哦,能生存啦");break;
                
     }
     }
     else
     {
      System.out.println("只能喝水了");
     }
  }
 }

3、请从键盘输入要查询的年份和月份
输出对应月份的天数,并且计算从当前1月份到该月份的总天数

4、请输出20以内的奇数
for(int i =1; i <= 20; i++)
  {
      if(i%2!=0)
   {
    System.out.println("20以内的奇数有:"+i);
   }
  }

5、请输出100到888之间的能被13整除,
但是不能被3整除的数字
if(100<m<888)
{}
else{输入数据出错,请重新输入}

要求:符合条件的数字,每行4个
注:System.out.println():输出会换行
System.out.print():输出不会换行
\t:制表符,会产生多个空格的效果 
class zuoye04
{
 public static void main(String[] args)
 {   
   int b=0;
   for(int i=100; i<=888; i++)
   {
      if(i%13==0)
      {
      if(i%3!=0)
      {
       System.out.print(i+"\t");
       b+=1;
       if(b%4==0)
       {
          System.out.println("");
       }
    }
   }
   
   }
 }
}

附加题***:
打印乘法口诀
1*1=1
2*1=2 2*2=4
3*1=3 3*2=6 3*3=9
……

class zuoye06
{
 public static void main(String[] args)
 {
      int num = 0;
   for(int i=1; i<=9; i++)
   {
       for(int j=1; j<=i; j++)
    {
        num = i*j;
     System.out.print(i+"*"+j+"="+num+"\t");

}
    System.out.println();
   }
 }
}

时间: 2024-08-19 06:06:05

千峰培训Day03-java基础学习:for循环,switch,if的相关文章

Java基础学习——数组初识(1)

Java基础学习--数组初识(1) 1什么是数组 Java中常见的一种数据结构就是数组,数组可以分为一维数组.二维数组和多维数组. 数组是由一组相同的变量组成的数据类型,数组中每个元素具有相同的数据类型,数组中的每个元素都可以用一个统一的数组名和下标来确定. 2 数组的使用 数组的一般使用步骤: 声明数组 分配内存给该数组 下面是一维数组为例: 数据类型  数组名 []: 数组名 = new 数据类型 [数据个数]: 2.1一维数组的声明与赋值 1.数组的声明 int  num [];    

JAVA基础学习笔记(2)

看了几天的视频了,都没时间来写下学习笔记,今天来写下第二次的学习笔记,前几天看的给忘记了,就写最新看到的吧 主要内容:1.类的变量与函数(方法) 2.对象的存储方式 3.新建一个对象及对象的赋值与调用 4.空对象 5.匿名对象 1.类的变量与函数(方法) class Dog      //类名 { String name;  //变量的声明 int age; String color; void bark()   //方法的定义(返回值为空,不带参数) { System.out.println(

Java基础学习--抽象类与抽象函数

Java基础学习--抽象类与抽象函数 abstract class 抽象类不能制造对象,但是可以定义变量,赋给这个变量的一定是他非抽象子类的对象: 抽象类中的抽象函数没有函数体,例如:public abstract void move(); 一个抽象类可以没有任何抽象方法,所有的方法都有方法体,但是整个类是抽象的. 抽象类中所有的的抽象函数必需子类的覆盖,而非抽象函数不需要覆盖.因为子类会继承父类的函数,如果不去覆盖继承来的抽象函数,那么子类就含有抽象函数,含有抽象函数的类必须要声明为抽象类.

JAVA基础学习笔记(1)

今天第一天开始学JAVA,时间:2014年6月17日 学习内容:1.java环境的架设 2.JAVA基本数据类型 1.JAVA环境的架设       1.要先去下载JDK,下载地址 2.安装完成后,设置环境变量 1.1环境变量的设置        1.右键-我的电脑-属性-高级-环境变量-系统变量,找到PATH,在里面加入jdk里bin目录的地址 如:c:\java\bin; 2.新建-名为classpath,值为. 1.2测试JAVA是否配置正确        1.在cmd里面输入javac.

Java基础学习总结——Java对象的序列化和反序列化

一.序列化和反序列化的概念 把对象转换为字节序列的过程称为对象的序列化. 把字节序列恢复为对象的过程称为对象的反序列化. 对象的序列化主要有两种用途: 1) 把对象的字节序列永久地保存到硬盘上,通常存放在一个文件中: 2) 在网络上传送对象的字节序列. 在很多应用中,需要对某些对象进行序列化,让它们离开内存空间,入住物理硬盘,以便长期保存.比如最常见的是Web服务器中的Session对象,当有 10万用户并发访问,就有可能出现10万个Session对象,内存可能吃不消,于是Web容器就会把一些s

java基础学习笔记day01

java基础学习笔记day01 1.软件开发: 软件:按照特定顺序组织的计算机数据和指令的集合 开发:软件的制作过程 软件开发:借助开发工具和计算机语言制作软件 2.java概述: java之父:詹姆斯·高斯林 JDK:java开发环境 jre:java运行环境 JVM:java虚拟机 java跨平台是因为,JVM能在不同的平台运行,JVM是跨平台的 JavaSE:标准版 JavaME:手机端,物联网 JavaEE:企业版,互联网项目 3.java语言特点: 简单性 解释性 面向对象 高性能 分

Java基础学习1-Java标识符及基本类型

暑假闲来无事,重新学习Java,希望能够加深自己对Java的理解与深入. 第一天,从Java标识符开始. Java标识符的命名规则 - 标识符必须以字母.下划线.美元符$开头. - 标识符其它部分可以是字母.下划线.美元符$和数字的任意组合. - Java标识符的大小写敏感,无长度限制(但是也不要太长,会变成裹脚布的(/ □ \)). - 不可以是Java的关键字(这点只要是有点基础的都会知道啦,Java的关键字还挺多的哦,小心踩到地雷呀). 下面是一个小栗子. /* *测试标识符的写法 */

转载:java基础学习总结——java读取properties文件总结

java基础学习总结--java读取properties文件总结 一.java读取properties文件总结 在java项目中,操作properties文件是经常要做的,因为很多的配置信息都会写在properties文件中,这里主要是总结使用getResourceAsStream方法和InputStream流去读取properties文件,使用getResourceAsStream方法去读取properties文件时需要特别注意properties文件路径的写法,测试项目如下: 1.1.项目的

java基础学习总结——java环境变量配置(转)

java基础学习总结——java环境变量配置 前言 学习java的第一步就要搭建java的学习环境,首先是要安装 JDK,JDK安装好之后,还需要在电脑上配置"JAVA_HOME”."path”."classpath"这三个环境变量才能够把java的开发环境 搭建好.在没安装过jdk的环境下,path环境变量是系统变量,本来存在的,而JAVA_HOME和classpath是不存在的. 一.配置JAVA_HOME变量 操作步骤(win7系统):计算机→右键“属性”→高

java基础学习-变量&运算

package com.J; public class java { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub float a=1.11111111111111f;    // 数据表示单精度末尾+"f",此处数据存储要溢出 double b=1.1111111111111111;  // java里面默认小数都为double双精度浮点