JAVA之旅

一、Scanner用法

  1. 首先需要先import这个类

  2. 在Scanner中new一个新的对象

  3. 调用这个方法

    import java.util.Scanner; 
    public class Fish {
    	public static void main(String[] args) {
    		Scanner sc = new Scanner(System.in);
    		System.out.println("qingshuru");
    		int num = sc.nextInt();
    		System.out.println("mun" + num);
    	}
    }
    

    通过键盘可以输入对应的内容

二、JAVA实现99乘法表

主要要思考每行是怎么输出的

比如说第二行,他的展示为:2*1=2 2*=4

我们可以看出,第一位的因数是不会变的,为行数

第二位的话,则是递增的关系,递增至行数值

我们可以使用嵌套for循环进行

外面一个for循环,循环他的行数

里面嵌套的for循环,循环至每行数

public class Jiujiu {
	public static void main(String[] args) {
	//循环输出对应的九九乘法表
		//用i表示行数,j表示列
		
		for (int i=1;i<10;i++){
			for(int j=1;j<=i;j++) {
				System.out.print(i+"*"+j+"="+i*j);
				System.out.print(" ");
			}
			System.out.println();
		}
	}
}

三、水仙花数

定义:一个三位数,个位的立方+十位的立方+百位的立方=这个数,这种数就被叫做是水仙花束

public class ShuiXianHua {
	public static void main(String[] args) {
		//求出100--999中的水仙花
		//个位的3立方加上十位的立方加上百位的立方等于这个数
		int count = 0;
		for(int i = 100;i<=999;i++) {
			int bai = i /10/10;
			int shi = i/10%10;
			int ge = i%10;
			if(bai*bai*bai+shi*shi*shi+ge*ge*ge == i) {
					System.out.println(i);
					count = count +1;
		}
	}
		System.out.println("在这个100-999中一共有"+count + "个水仙花数");
}
}

四、JAVA实现金字塔展示

通过for循环,进行是实现

实现的思路:

  1. 每一行展示的个数为1、3、5....所以实现的话是每行个数=(第几行*2-1)进行实现

  2. 每行的前面以空格进行隔开,个数=(想要实现的行数-第几行)为每行输出空格的个数

  3. 输出空格后,后面直接跟上每行输出*号的个数

public class Jinzita {
	public static void main(String[] args) {
	/*	for (int i = 1; i <=5; i++) {
			for (int j = 1; j <=i; j++) {
				System.out.print("*");
			}
			System.out.println(" ");
		}
		*/
	
		//定义行数数值
		Scanner sc = new Scanner(System.in);
		System.out.println("请输入你想输出多少行金字塔");	
		int hang = sc.nextInt();
		int geshu = hang*2-1;
		for(int i =1;i<=hang;i++) {			
			for (int j = 1; j<=hang-i; j++) {
				System.out.print(" ");
				}
				for (int j = 0;j<i*2-1;j++){
					System.out.print("*");
					}
			System.out.println();
			}
	}
}

五、冒泡数组的输出

为了实现for循环遍历,初始条件为i=0,因为索引总是从0开始,继续循环的条件为i<ns.length,ns是对应数组名

因为当i=ns.length时,i已经超出了索引范围(索引范围是0 ~ ns.length-1),每次循环后,i++。当i等于他的长度时,会出现索引的超出,是java中最容易出现问题的地方

因为数组的位置是从0开始,而长度的话,就是正常的长度

package ccc;

import java.util.Arrays;

public class maopao {

  public static void main(String[] args) {
    // TODO Auto-generated method stub
    
//    n个数字来排队
//    两两相比小靠前
//    外层循环 n-1
//    内层循环 n-1-i
    int[] a = {1, 2, 55, 99, 44, 22, 3, 8};
    int shu;
    for (int j = 0; j < a.length - 1; j++) {
      for (int i = 0; i < a.length - j - 1; i++) {     
        if (a[i] > a[i + 1]) {
          shu = a[i];
          a[i] = a[i + 1];
          a[i + 1] = shu;
        }
      }
    }
    System.out.println(Arrays.toString(a));
  }

}

 结果:

[1, 2, 3, 8, 22, 44, 55, 99]

public class For {
	public static void main(String[] args) {
		
		/*for(int i = 1; i<=5 ;i++) {
			System.out.println("hello");
		}*/
		/*int count = 0;
		//找出0-100以内的偶数
		for(int i=1;i<=100;i++) {
			if(i%2 == 0) {
				System.out.println(i);
				count = count+1;
			}
	
		}
		System.out.println("一共有"+ count + "个偶数");*/
		
		//for each
		
		int[] shuzu = {1,2,3,5,7,8,9 };
		for(int n : shuzu) {
			System.out.println(n);
		}
		System.out.println("--------------------");
		for(int i = 0; i<shuzu.length;i++) {
//for(int i = 0; i<=shuzu.length;i++) 如果这边变为<=,就会出现报错
			System.out.println(shuzu[i]);
		}
	}
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值