双重循环和函数(个人笔记七)

双重循环 函数

1 双层循环

//例子 打印如下图形
01 2 3456 7 89
01 2 3456 7 89
01 2 3456 7 89
0 12 3456 7 89
01 2 3456 7 89

for(int i=0;i<5;i++){
for(int j=0;j<10;j++){
System.out.print(j+"\t");
}
System.out.println();   //每打印完一组,换行
}

//例子 打印如下图形
**********
**********
**********
**********
for(int i=0;i<4;i++){
for(int j=0;j<10;j++){
System.out.print("*");
}
System.out.println();
}

//例子 打印如下图形
  ##########
  #########
  ########
  #######
  ######
  #####
  ####
  ###
  ##
  #
  
int count=10;
for (int i = 0; i <10; i++) {
for(int j=0;j<count;j++){
System.out.print("#");
}
count--;
System.out.println();
}

2 break 和 cuntinue

break 用于结束 switch case语句或循环语句
//判断1=10000之间所有能被99整除的数是不是超过20个
int count=0;
for (int i = 0; i <10000; i++) {
if(i%99==0){
count++;
if(count>20){
System.out.println("报告:超过20个");
break;  //用来结束循环
}
}
}

if(count<20){
System.out.println("报告:不超过20个");
}

//例子 本例演示的是break打断的是离自已最近的一层循环
for(int i=0;i<5;i++){
for(int j=0;j<10;j++){
System.out.print(j+" ");

if(j>6){
break;  //打断的是离自已最近的那层循环
}
}
System.out.println();

}


0 1 2 3 4 5 6 7 
0 1 2 3 4 5 6 7 
0 1 2 3 4 5 6 7 
0 1 2 3 4 5 6 7 
0 1 2 3 4 5 6 7 

//例子 标号的使用
AAA:for(int i=0;i<5;i++){
BBB:for(int j=0;j<10;j++){
System.out.print(j+" ");
if(j>6){
break AAA;  //打断的是离自已最近的那层循环
}
}
System.out.println();
}

结果  0 1 2 3 4 5 6 7  后面就没有了,因为外循环也打断了

//例子 cuntinue 的使用 
for (int i = 0; i < 1000; i++) {
if(i%5 !=0){
continue;  //结束当前这次循环,继续下一次循环
}
System.out.println(i);
System.out.println("一年一班的小豆包们你们好");
}

 3 函数

就是一段能独立运行的程序
 
修饰符 返回类型 函数名(参数类型 参数名 ,参数类型 参数名 , ....) {
函数体 
return 返回值
}
 
public static void main(String [] args) {
...
return;  //可以省略
}
 
//例子,写一个函数,求两个数的合  
class Test{
public static void main(String[] args) {
System.out.println("哈哈");
System.out.println("哈哈");
int a=888777;   //这就是要传给函数实参
int b =99000;
add(a,b);  //调用函数,并传参
System.out.println("哈哈");
System.out.println("哈哈");
}

//这就是一个能算加法的函数
static void add(int a,int b) { //a , b  是函数的形式参数
System.out.println(a+b);
}
}

//例子 计算加法,带有返回值的函数
public static void main(String[] args) {
System.out.println("哈哈");
System.out.println("哈哈");
int a=5000;
int b =3000;
int c =add(a,b);
System.out.println("计算结果是"+c);
System.out.println("哈哈");
System.out.println("哈哈");
}

static int add(int a,int b) { //这个函数,将会有一个int型的返回值 This method must return a result of type int
return a+b;
}

//例子 写一个函数,接收两个参数和一个计算符号,能根据符号进行计算,返回计算结果
class Test{
public static void main(String[] args) {
Scanner scan=new Scanner(System.in);
System.out.println("请输入第一个数:");
int a=scan.nextInt();
System.out.println("请输入第二个数");
int b=scan.nextInt();
System.out.println("请输入计算符号");
String c=scan.next();   //从键盘接收一个字符串
int result=jisuan(a,b,c.charAt(0));
System.out.println("计算结果是:"+result);
}

static int jisuan(int a ,int b, char c){
int result=0;
switch(c){
case '+':
result=a+b;
break;
case '-':
result=a-b;
break;
case '*':
result=a*b;
break;
case '/':
result=a/b;
break;
default :
System.out.println("输入错误:错误代码:99999");
result= -99999;
}
return result;
}
}

//例子  铺地板
  ##################
  ##################
  ##################
  ##################
  ##################
//方式一  
class Test {
public static void main(String[] args) {
System.out.println("赶紧来个工人帮我干点活");
System.out.println();

pudiban();

System.out.println();
System.out.println("活干完了");
}

static void pudiban() {
for (int j = 0; j < 5; j++) {
for (int i = 0; i < 20; i++) {
System.out.print("#");
}
System.out.println();
}
}
}


    //方式二 (带参数)
    class Test {
public static void main(String[] args) {
System.out.println("赶紧来个工人帮我干点活");
System.out.println();
pudiban(5,10,"@");
pudiban(10,8,"$");
System.out.println();
System.out.println("活干完了");
}

static void pudiban(int row,int cols,String style) {
for (int j = 0; j < row; j++) {
for (int i = 0; i < cols; i++) {
System.out.print(style);
}
System.out.println();
}
}
}


//方式三 (带返回值)
class Test {
public static void main(String[] args) {
System.out.println("赶紧来个工人帮我干点活");
System.out.println();
pudiban(5,10,"@");
pudiban(10,8,"$");
float gongzi=pudiban(7,12,"%",2.99f);
System.out.println("应付工资"+gongzi);
System.out.println();
System.out.println("活干完了");
}

  //这个函数,不带返回值
static void pudiban(int row,int cols,String style) {
for (int j = 0; j < row; j++) {
for (int i = 0; i < cols; i++) {
System.out.print(style);
}
System.out.println();
}
}

//这个函数,能计算工资并返回
static float pudiban(int row,int cols,String style,float money) {
for (int j = 0; j < row; j++) {
for (int i = 0; i < cols; i++) {
System.out.print(style);
}
System.out.println();
}
float 工资=row*cols*money;
return 工资; 
}
}

4 函数的重载

在一个类中,可以存在名称相同, 但函数的参数的个数,或者是参数的类型不同,这样的函数可以同时存在
称为函数的重载,函数是不是重载,不看返回值(和返回值没有关系)
以下函数哪个 void a (int a,char b, String c) 是的重载
   void a(int x,char y,String z) //不是,和原函数相同
   int a (int a,String b, char c) //是重载
   void a (int a,String b, String c) //是重载
   int a (int a,String b) //是
   int a ()  //是
   boolean a (int a,char b,String name) //不是,因为函数是不是重载和返回值无关
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值