Java的新路程

数据类型

1.Java的八大基本数据类型为:
整型:
byte 字节型 1字节 8bit 最大存储数据量是255,存放的数据范围是-128~127之间
short 短整型 2字节 16bit 最大数据存储量是65536,数据范围是-32768~32767之间
int 整型 4字节 32bit 最大数据存储容量是2的32次方减1,数据范围是负的2的31次方到正的2的31次方减1
long 长整型 8字节 64bit 最大数据存储容量是2的64次方减1,数据范围为负的2的63次方到正的2的63次方减1
浮点型
float 单精度 4字节 32bit 数据范围在3.4e-45~1.4e38,直接赋值时必须在数字后加上f或F
double 双精度 8字节 64bit 数据范围在4.9e-324~1.8e308,赋值时可以加d或D也可以不加
字符类型
char 字符型 用单引号
布尔类型
boolean 布尔型 true/false(只有真假两种结果)
数据地域:
1.一个bit是计算机考研存储的最小的数据单位。即1位,只可能是0或1.
2.一个byte由八个bit组成,即八位,可以表示256个整数值,又由于byte在Java中有符号之分(即正负数),所以范围位-128~127.
3.一个char在Java中由两个byte组成,用来表示一个字符,即unicode编码,是无符号类型。
4.int和float在Java中由4个byte组成。
5.每个long或double型变量占用八个byte的存储空间。
6.1T=1024G,1G=1024M,1M=1024K,1K=1024B
3.对象数据类型(应用数据类型,类型)
所有用class,interface,abstract class定义的类;
String是Java定义的一个类。
String的数据存储方式和Java的基本数据类型是一致的。
String的定义方式
String str=“abc”;
String str-new String();
今日练习

  1. 根据年龄, 来打印出当前年龄的人是少年(低于18), 青年(19-28), 中年(29-55), 老年(56以上)
  2. 判定一个数字是否是素数
  3. 打印 1 - 100 之间所有的素数
  4. 输出 1000 - 2000 之间所有的闰年
  5. 输出乘法口诀表
  6. 求两个正整数的最大公约数
  7. 计算1/1-1/2+1/3-1/4+1/5 …… + 1/99 - 1/100 的值。
  8. 编写程序数一下 1到 100 的所有整数中出现多少个数字9。
  9. 求出0~999之间的所有“水仙花数”并输出。(“水仙花数”是指一个三位数,其各位数字的立方和确好等于该数本
    身,如;153=1+5+3?,则153是一个“水仙花数”。)
  10. 编写代码模拟三次密码输入的场景。 最多能输入三次密码,密码正确,提示“登录成功”,密码错误, 可以重新输
    入,最多输入三次。三次均错,则提示退出程序
  11. 写一个函数返回参数二进制中 1 的个数 比如: 15 0000 1111 4 个 1
  12. 获取一个数二进制序列中所有的偶数位和奇数位, 分别输出二进制序列。
  13. 输出一个整数的每一位.
  14. 完成猜数字游戏
    代码如下:
package 比特作业;
import java.util.Random;
import java.util.Scanner;
public class 猜数字游戏 {
	public void main(String[] args) {
		// TODO Auto-generated method stub
		
		  
		        System.out.println("欢迎进入猜数字游戏!");
		        System.out.println("请输入一个数字:(范围是0-100)");
		        Random pc_game = new Random();
		        int pc_num = pc_game.nextInt(101);//随机产生一个小于101的整数
		        Scanner input = new Scanner(System.in);
		        int count = 5;//猜的次数,可自定义
		        while(count > 0)
		        {
		            System.out.println("您有"+count+"次机会!");
		            count--;
		            System.out.print("请输入猜的数字:->");
		            int user_num = input.nextInt();
		            if(pc_num == user_num)
		            {
		                System.out.println("you are right!");
		                count = 0;
		            }
		            else if(pc_num > user_num)
		            {
		                System.out.println("sorry, guess small!");
		            }
		            else if(pc_num < user_num)
		            {
		                System.out.println("sorry, guess big!");
		            }
		        }
		        System.out.println("游戏结束!");
		        input.close();
		    }
		}


package 比特作业;

public class 打印素数 {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		int j;

		for (int i = 2; i <= 100; i++) // 1不是素数,所以直接从2开始循环

		{

		j = 2;

		while (i % j != 0)

		j++; // 测试2至i的数字是否能被i整除,如不能就自加

		if (j == i) // 当有被整除的数字时,判断它是不是自身

		System.out.println(i); // 如果是就打印出数字

		}

		}
	}



package 比特作业;

public class 获取二进制 {

	
		   //  以11为例子,//11:0000 0000 0000 0000 0000 0000 0000 1011
		// 奇数位序列:0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1
		// 偶数位序列:0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1
		    public static void main(String[] args) {
		        int value=11;
		        System.out.println("偶数序列");
		        for(int i=31;i>0;i-=2){
		            System.out.print((value>>i)&1);
		        }
		        System.out.println("");
		        System.out.println("奇数序列");
		        for(int i=30;i>=0;i-=2){
		            System.out.print((value>>i)&1);
		        }
		    }
		}

	
package 比特作业;
import java.util.Scanner;
public class 模仿3次密码 {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
	     System.out.println("欢迎使用");
		         for(int i=0;i<3;i++){
		             System.out.println("请输入密码:");
		             @SuppressWarnings("resource")
					Scanner in = new Scanner(System.in);
		             String password = in.next();
		             if(password.equals("987654")){
		                 System.out.println("登陆成功");
		                 break;
		             }
		             else{
		                 System.out.println("密码错误,请重新输入,你还有"+(2-i)+"次输入机会");
		             }
		         }
	}
}

package 比特作业;

public class 判断9 {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		
		        int num = 0;
		        int count = 0;//计数器
		        for (num = 1; num <= 100; num++) {
		            //判断个位上是否有 9 
		            if (num % 10 == 9) {
		                count++;
		            } 
		            //判断十位上是否有 9
		            if (num / 10 == 9) {
		                count++;
		            }
		        }
		        System.out.println(count);
		    }
		}

	
package 比特作业;

public class 判断年龄 {

	
		// TODO Auto-generated method stub
		 public static void main(String[] args) {
			 int age =20;
			 if(age > 0 && age < 18)
			 System.out.println("少年");
			 if(age > 19 && age < 28)
			 System.out.println("青年");
			 if(age > 29 && age <55)
			 System.out.println("中年");
			 if(age > 55)
			 System.out.println("老年");
			 

		 }
			
	}



package 比特作业;
import java.util.Scanner;
		public class 判断素数{
		   public static void main(String[] args){
		       
		    result();   
		   }
		    /*判断输入的数字是否为质数*/
		    public static boolean judge(int x){

		        if(x==1||x==0){
		            return false;
		        }
		        for(int i=2;i<=Math.sqrt(x);i++){
		            if(x%i==0){
		                return false;
		            }
		        }
		        return true;
		    }
		
		    /*结果*/
		    public static void result(){
		        Scanner s = new Scanner(System.in);
		        System.out.print("请输入一个你想判断的数:");
		        int n = s.nextInt();
		        if(n>0){
		            if(judge(n)){
		                System.out.println("是素数");
		            }else{
		                System.out.println("不是素数");
		            }
		        }else{
		            System.out.println("请输入一个大于0的数");
		            result();
		        }
		    }
		}

	}

}

package 比特作业;

public class 求和 {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		
			int i, j;
			float max1=(float) 0.000000, max2=(float) 0.000000,max;
			for(i=(int) 1.000000; i<=100; i+=2)
			{
				max1+=1.000000/i;
			}
			for(j=(int) 2.000000; j<=100; j+=2)
			{
				max2+=1.000000/j;
			}
			max=max1-max2;
		
			System.out.printf("%d ",max);
		}
	}



package 比特作业;

public class 输出乘法口诀表 {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		
		        System.out.println("乘法口诀表:");
		        for(int i=1;i<=9;i++)
		        {
		            for(int j=1;j<=i;j++)
		            {
		                System.out.print(j+"*"+i+"="+j*i+"\t");
		            }
		            System.out.println();
		        }
		    }
		}
	
package 比特作业;

public class 输出瑞年 {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		
		        int year;
		        for(year=1000;year<2001;year++){
		            if((year%400==0)||(year%4==0&&year%100!=0)){
		                System.out.printf("%d ",year);
		            }
		        }
		    }
		}

	
package 比特作业;

public class 输出整数的每一位 {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		
		        int a=9527;
		        print(a);
		    }
		    
		    //递归
		    public static void print(int a){ 
		        if(a>9){
		            print(a/10);
		        }
		    System.out.println(a % 10 +"");
		    }
	}



package 比特作业;

public class 水仙花数 {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		//水仙花数是指:一个三位数,其各位数字的立方和等于该数本身
		//例如:153就是一个水仙花数。
		//153 = 1*1*1 + 5*5*5 + 3*3*3 = 1 + 125 + 27 = 153
		 
		
		 
				int count = 0;
		 
				for (int i = 0; i < 1000; i++) {
					int ge = i % 10;
					int shi = i / 10 % 10;
					int bai = i / 100 % 10;
		 
					if (i == ge * ge * ge + shi * shi * shi + bai * bai * bai) {
						System.out.println(i + "是水仙花数");
						count++;
					}
				}
				System.out.println("一共有" + count + "个水仙花数");
			}
		 
		}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值